poj1555--Polynomial Showdown (水题)
根据题目意思来就行了
View Code
1 //Accepted 392K 0MS G++ 1292B 2 #include <stdio.h> 3 int main(void) 4 { 5 int a[9]; 6 int sum; 7 while(scanf("%d",&a[8])==1) 8 { 9 sum = a[8]; 10 for(int i=7;i>=0;--i) 11 { 12 scanf("%d",&a[i]); 13 sum += a[i]; 14 } 15 if(sum == 0) 16 { 17 printf("0\n"); 18 continue; 19 } 20 int i = 8; 21 while(a[i] == 0) --i ; 22 if(i == 0) 23 { 24 printf("%d\n",a[0]); 25 } 26 else if(i == 1) 27 { 28 if(a[1] == 1) printf("x"); 29 else if(a[1] == -1) printf("-x"); 30 else printf("%dx",a[1]); 31 32 if(a[0] > 0) printf(" + %d\n",a[0]); 33 else if(a[0] < 0) printf(" - %d\n",a[0] * (-1)); 34 else puts(""); 35 } 36 else 37 { 38 if(a[i] == 1) printf("x^%d",i); 39 else if(a[i]==-1) printf("-x^%d",i); 40 else printf("%dx^%d",a[i],i); 41 42 for(i = i -1 ; i > 1; --i) 43 { 44 if(a[i] != 0) 45 { 46 if(a[i] == 1) printf(" + x^%d",i); 47 else if(a[i] == -1) printf(" - x^%d",i); 48 else if(a[i] > 1) printf(" + %dx^%d",a[i],i); 49 else printf(" - %dx^%d",a[i] * (-1),i); 50 } 51 } 52 if(a[1] != 0) 53 { 54 if(a[1] == 1) printf(" + x"); 55 else if(a[1] == -1) printf(" - x"); 56 else if(a[1] > 1) printf(" + %dx",a[1]); 57 else printf(" - %dx",a[1] * (-1)); 58 } 59 if(a[0] != 0) 60 { 61 if(a[0] > 0) printf(" + %d",a[0]); 62 else printf(" - %d",a[0] * (-1)); 63 } 64 puts(""); 65 } 66 } 67 }


浙公网安备 33010602011771号