题解 有点长
2023-07-22 17:03:56
发布于:浙江
14阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
int main(){
	bool f=0;
    int n;
    cin>>n;
	int k;
    if(n==0){
    	cin>>k;
    	if(k>0)cout<<"+"<<k;
    	else cout<<k;
    	return 0;
	}
	if(n==1){
		cin>>k;
	    if(k==1)cout<<"x",f=1;
	    if(k==-1)cout<<"-x",f=1;
	    if(k>1)cout<<k<<"x",f=1;
	    if(k<-1)cout<<k<<"x",f=1;
		cin>>k;
		if(k==1)cout<<"+"<<k,f=1;
		if(k==-1)cout<<"-"<<k,f=1;
		if(k>1)cout<<"+"<<k,f=1;
	    if(k<-1)cout<<k,f=1;
	    if(!f)cout<<0;
	    return 0;
	}
    cin>>k;
    if(k!=1&&k!=-1&&k!=0)cout<<k<<"x^"<<n,f=1;
    if(k==1)cout<<"x^"<<n,f=1;
    if(k==-1)cout<<"-x^"<<n,f=1;
    while(n--&&n>1){
    	cin>>k;
    	if(k==1)cout<<"+x^"<<n,f=1;
    	if(k==-1)cout<<"-x^"<<n,f=1;
    	if(k>1)cout<<"+"<<k<<"x^"<<n,f=1;
    	if(k<-1)cout<<k<<"x^"<<n,f=1;
	}
	cin>>k;
    if(k==1)cout<<"+x",f=1;
    if(k==-1)cout<<"-x",f=1;
    if(k>1)cout<<"+"<<k<<"x",f=1;
    if(k<-1)cout<<k<<"x",f=1;
	cin>>k;
	if(k==1)cout<<"+"<<k,f=1;
	if(k==-1)cout<<k,f=1;
	if(k>1)cout<<"+"<<k,f=1;
    if(k<-1)cout<<k,f=1;
    if(!f)cout<<0;
	return 0;
}
全部评论 1
太长了 改短一点
2023-07-26 来自 浙江
0



有帮助,赞一个