Sunday, August 17, 2014

uva: 392 - Polynomial Showdown


#include <stdio.h>
#include <stdlib.h>

int main(void)
{
 int i;
 int d[9];


 while(scanf("%d %d %d %d %d %d %d %d %d",
    &d[8], &d[7], &d[6], &d[5],
    &d[4], &d[3], &d[2], &d[1], &d[0])==9) {
  int first=1;
  for(i=8; i>=0; i--) {
   if (d[i]) {
    if (first) {
     first=0;
    } else {
     if (d[i]>0) {
      printf(" + ");
     } else {
      printf(" - ");
      d[i] = -d[i];
     }
    }
    if (i>0 && d[i]==-1) {
     printf("-");
    } else if (i==0 || d[i]!=1) {
     printf("%d",d[i]);
    }
    if (i) {
     printf("x");
     if (i>1) {
      printf("^%d",i);
     }
    }
   } else if (first && i==0) {
    printf("0");
   }
  }
  printf("\n");
 }
 exit(0);
}

No comments:

Post a Comment