考虑a=-1的情况
by Ke9_qux @ 2022-09-03 16:37:40
@[zhizhi_c](/user/768144)
输入:
2
1 1 1
输出应该是:x^2+x+1
而你:x^2+x^1
问题:
1.x^1应该是x
2.最后一项没了。
by Starry_sky700 @ 2022-09-03 17:25:28
```cpp
#include<stdio.h>
using namespace std;
int main(){
int a[101],n,i;
scanf("%d",&n);
for(i=0;i<=n;i++) scanf("%d",a+i);
for(i=0;i<=n;i++){
if(a[i]){
if(a[i]<0){
putchar('-');
a[i]=-a[i];
}
else if(i) putchar('+');
if(a[i]==1) printf("x^%d",n-i);
else if(i==n) printf("%d",a[i]);
else if(i==n-1) printf("%dx",a[i]);
else printf("%dx^%d",a[i],n-i);
}
}
return 0;
}
```
50分
by zhizhi_c @ 2022-09-03 21:42:42
@[zhizhi_c](/user/768144)
姐姐刷的题没你多
###### QWQ
by _Yes @ 2022-10-05 20:29:37
@[zhizhi_c](/user/768144)
~~本蒟蒻第一次回帖QWQ~~
**问题一**
不妨试一试以下样例
```
9
-1 0 -7 0 0 0 0 100 1 8
```
你会发现你的输出是
```
-x^9-7x^7+100x^2+x^1+8
```
而题目中要求省略x^1中的1。
按你做的程序,这非常不好判断,不信你把样例换成
```
9
-1 0 -7 0 0 0 0 100 2 8
```
只把最后的1改成了2,你的问题就没了
应该是特判少情况了
###### 【疯狂眨眼】
问题二
再试一试以下样例
```
0 1
```
你会发现你的输出是
```
x^0
```
而按照要求是1 (任何数的0次方为1)
多个if else人家也不管你,~~一看我就是惯犯~~
我最多看到了这几个问题
~~姐姐刷题没你多,能力有限,但模拟还是可以的~~
\\^o^/
by _Yes @ 2022-10-05 20:52:19