大佬帮帮忙60分
查看原帖
大佬帮帮忙60分
758565
czj20091123楼主2022/11/28 23:09
#include<bits/stdc++.h>
using namespace std;
int arr[10^8];
int main(){
	int n;
	scanf("%d",&n);
	for(int i=0;i<=n;i++){
		scanf("%d",&arr[i]);
	}
	int k=1;
	int g=n+1;
	for(int i=0;i<=n;i++){
		g--;
		if(arr[i]!=0){ 
			if(g==0){
				if(arr[i]>0){
					cout<<"+"<<arr[i];
					continue;
				}else if(arr[i]<0){
						cout<<arr[i];
						continue;
				}
				
			}
			if(g==1){
				if(arr[i]>1){
					cout<<"+"<<arr[i]<<"x";
					k=0;
				continue;
				}else if(arr[i]<-1){
					cout<<arr[i]<<"x";
					k=0;
					continue;
				}else if(arr[i]==1&&k==1){
					cout<<"x";
					k=0;
					continue;
				}else if(arr[i]==-1){
					cout<<"-x";
					k=0;
					continue;
				}else if(arr[i]==1&&k==0){
					cout<<"+x";
					k=0;
					continue;
				}
			}
			if(arr[i]>1&&k==1){
				cout<<arr[i]<<"x^"<<g;
				k=0;
				continue;
			}else if(arr[i]==1&&k==1){
				cout<<"x^"<<g;
				k=0;
				continue;
			} 
			
			
			if(arr[i]>1){
				cout<<"+"<<arr[i]<<"x^"<<g;
				continue;
			}
			if(arr[i]<-1){
				cout<<arr[i]<<"x^"<<g;
				continue;
			}
			if(arr[i]==1){
				cout<<"+x^"<<g;
				continue;
			}
			if(arr[i]==-1){
				cout<<"-x^"<<g;
				continue;
			}
		}
	}
	
	return 0;
} 
2022/11/28 23:09
加载中...