lll35657 @ 2024-12-16 15:46:41
n=int(input())
a=list(map(int,input().split()))
last=a[-1]
a.remove(a[-1])
c=0
for i in a:
while i != 0 :
print(f"{i}x^{n}", end="")
c += 1
break
a.remove(a[0])
for i in a:
n -= 1
if i>0 :
if i==1:
print(f"+x^{n}", end="")
else:
print(f"+{i}x^{n}", end="")
elif i<0:
if abs(i)==1:
print(f"-x^{n}", end="")
else:
print(f"{i}x^{n}", end="")
if last>0:
print(f"+{last}")
elif last<0:
print(last)
by markeoeitwupp @ 2024-12-16 16:24:55
又是你,但是这道题总感觉你写的不太对
我这里没编译出来
做法没大问题,代码感觉有点麻烦了
by markeoeitwupp @ 2024-12-16 16:31:08
可能有点原始
#include <bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
bool t=false;
for(int i=n;i>=0;i--){
int a;
cin>>a;
if(a==0)
continue;
t=true;
if(abs(a)==1){
if(a<0)
cout<<'-';
else if(i!=n)
cout<<'+';
if(i>0)
cout<<'x';
if(i>1)
cout<<"^"<<i;
if(i==0)
cout<<1;
}
else{
if(a<0)
cout<<'-';
else if(i!=n)
cout<<'+';
cout<<abs(a);
if(i>0)
cout<<'x';
if(i>1)
cout<<"^"<<i;
}
}
}