考试写的代码,用AC代码对拍全过,但是WA了,求助qwq
查看原帖
考试写的代码,用AC代码对拍全过,但是WA了,求助qwq
278764
陰陽さん楼主2021/3/10 21:51
#include<bits/stdc++.h>
using namespace std; 
int m,n,l;
int tp1[40],tp2[40],tp[110];
string s;
void exprint(){
cout<<s<<endl;
}
void explosion(){
	for(int i=0;i<=30;i++){
		for(int j=0;j<=30;j++){
			tp[i+j]+=tp1[i]*tp2[j];
		}
	}int fl=0;
	for(int i=100;i>=0;i--){
		if(tp[i]){
			if(fl++)cout<<"+";
			printf("%d",tp[i]);
			if(i>0)printf("a^%d",i);
		}
	}
	cout<<endl;
}
int main(){
	while(getline(cin,s)){
	int i,j,k,x,y,z,t,p;
		memset(tp1,0,sizeof tp1);
		memset(tp2,0,sizeof tp2);
		memset(tp,0,sizeof tp);
		l=s.size();
		for(k=0;k<l;k++)
			if(s[k]=='*')break;
		if(k==l){
			exprint();continue;
		}
		for(i=0;i<k;i++){
			if(s[i]=='a'){
				x=0;t=i-1;p=1;
				while(s[t]>='0'&&s[t]<='9'||s[t]==' '){
					if(s[t]==' '){
						t--;continue;
					}
					x=x+(s[t]-'0')*p;p*=10;t--;
				}t=i;p=1;
				i=i+1;while(s[i]==' ')i++;
				if(s[i]=='^'){
					t=i+1;p=0;
					while(s[t]>='0'&&s[t]<='9'||s[t]==' '){
						if(s[t]==' '){
							t++;continue;
						}
						p=p*10+s[t]-'0';t++;
					}
				}
				tp1[p]+=x;
				
			}
		}
		for(i=k-1;;i--){
			if(s[i]=='a')break;
			if(s[i]=='+'){
				t=i+1;x=0;
				while(s[t]>='0'&&s[t]<='9'||s[t]==' '){
					if(s[t]==' '){
						t++;continue;
					}
					x=x*10+s[t]-'0';t++;
				}
				tp1[0]+=x;
				break;
			}
		}
		for(j=k+1;j<l;j++){
			if(s[j]=='a'){
				x=0;t=j-1;p=1;
				while(s[t]>='0'&&s[t]<='9'||s[t]==' '){
					if(s[t]==' '){
						t--;continue;
					}
					x=x+(s[t]-'0')*p;p*=10;t--;
				}t=j;p=1;
				j=j+1;while(s[j]==' ')j++;
				if(s[j]=='^'){
					t=j+1;p=0;
					while(s[t]>='0'&&s[t]<='9'||s[t]==' '){
						if(s[t]==' '){
							t++;continue;
						}
						p=p*10+s[t]-'0';t++;
					}
				}
				tp2[p]+=x;
			}
		}
		for(i=l-1;i>k;i--){
			if(s[i]=='a')break;
			if(s[i]=='+'){
				t=i+1;x=0;
				while(s[t]>='0'&&s[t]<='9'||s[t]==' '){
					if(s[t]==' '){
						t++;continue;
					}
					x=x*10+s[t]-'0';t++;
				}
				tp2[0]+=x;
				break;
			}
		}
		explosion();
	}
	
	return 0;
}
2021/3/10 21:51
加载中...