P1067 多项式输出

it2022-05-09  34

链接 P1067 多项式输出

感想:

难以想象我搞了半个小时,,我天哪,,主要是刚开始逻辑写的太随意了,之后想改都不知道怎么改,还是要用纸和笔来演算一下推一下逻辑,然后要分开,符号的逻辑,系数的逻辑,x的逻辑都要分开,一个一个写,不然debug太伤心了

代码

#include <algorithm> #include <stdio.h> #include <stdlib.h> #include <iostream> using namespace std; const int maxn = 1005; int main() { #ifdef LOCAL freopen("C:\\Users\\hsxny\\Desktop\\in.txt", "r", stdin); #endif int n; cin>>n; int flag = 0;//标志有没有输出第一个数 for(int i=n;i>=0;i--) { int m; cin>>m; // 正负号 if(m==0) { continue; } // else if(!flag)//防止第一个数是0 // { // flag = !flag; // } if(m<0) { flag = 1; printf("-"); m =abs(m); } else if(m>0) { if(flag) printf("+"); flag =1; } // 系数 if(m==1 && i==0)//当系数为1时就是不显示的吧 { printf("1"); } else if(m==1 && i!=0) { } else { printf("%d", m); } // x和阶乘系数 if(i==1) { printf("x"); } else if(i==0) { } else { printf("x^%d",i); } } return 0; }

最新回复(0)