您的位置:首页 > 其它

poj1555--Polynomial Showdown (水题)

2012-09-16 15:18 302 查看
根据题目意思来就行了

View Code

//Accepted    392K    0MS    G++    1292B
#include <stdio.h>
int main(void)
{
int a[9];
int sum;
while(scanf("%d",&a[8])==1)
{
sum = a[8];
for(int i=7;i>=0;--i)
{
scanf("%d",&a[i]);
sum += a[i];
}
if(sum == 0)
{
printf("0\n");
continue;
}
int i = 8;
while(a[i] == 0) --i ;
if(i == 0)
{
printf("%d\n",a[0]);
}
else if(i == 1)
{
if(a[1] == 1) printf("x");
else if(a[1] == -1) printf("-x");
else  printf("%dx",a[1]);

if(a[0] > 0) printf(" + %d\n",a[0]);
else if(a[0] < 0) printf(" - %d\n",a[0] * (-1));
else puts("");
}
else
{
if(a[i] == 1) printf("x^%d",i);
else if(a[i]==-1) printf("-x^%d",i);
else printf("%dx^%d",a[i],i);

for(i = i -1 ; i > 1; --i)
{
if(a[i] != 0)
{
if(a[i] == 1) printf(" + x^%d",i);
else if(a[i] == -1) printf(" - x^%d",i);
else if(a[i] > 1) printf(" + %dx^%d",a[i],i);
else printf(" - %dx^%d",a[i] * (-1),i);
}
}
if(a[1] != 0)
{
if(a[1] == 1) printf(" + x");
else if(a[1] == -1) printf(" - x");
else if(a[1] > 1) printf(" + %dx",a[1]);
else printf(" - %dx",a[1] * (-1));
}
if(a[0] != 0)
{
if(a[0] > 0) printf(" + %d",a[0]);
else printf(" - %d",a[0] * (-1));
}
puts("");
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: