PAT-B] 1010. 一元多项式求导 [数论]

链接:1010. 一元多项式求导 (25)

题意

给一个一元的多项式,然后按格式输出求导后的多项式。

求导应该不用多说了,指数减一,系数乘上指数,就可以了。

分析

输入是以 “系数 指数 系数 指数” 的形式给的。当然输出也要是这个形式。
所以样例的输入输出分别为:
输入:$3x^4-5x^2+6x-2$
输出:$12x^3-10x+6$

然后注意一下答案为 0 时要输出 0 0

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <cstdio>
struct unit{
int xs, zs; // 系数, 指数
};
int main()
{
int flag = 1; // 判断答案是否为 0
unit a;
while( ~scanf( "%d%d", &a.xs, &a.zs ) ){
if( a.zs ){
if( flag ) flag = 0;
else printf( " " );
printf( "%d %d", a.xs * a.zs, a.zs - 1 );
}
else if( flag ) printf( "0 0" );
}
puts( "" );
return 0;
}

小结

由于求导前后各项互不影响,所以直接在线处理了。