[PAT Basic] 1010.一元多项式求导
Posted 47pineapple
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[PAT Basic] 1010.一元多项式求导相关的知识,希望对你有一定的参考价值。
设计函数求一元多项式的导数。(注:x?n??(n为整数)的一阶导数为nx?n−1??。)
输入格式:
以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。
输出格式:
以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是表示为 0 0
。
输入样例:
3 4 -5 2 6 1 -2 0
输出样例:
12 3 -10 1 6 0
分析:
1. 用一个flag标志是否已经输出过一个结果了,如果已经输出过一个结果,再输出结果之前要先输出一个空格。这样就能控制结尾没有多余的空格。
2. 对于$a^b$求导,先输出a*b,然后输出b - 1
3. 如果指数和系数都是0,那就 输出0 0
C++实现:
1 #include <iostream> 2 using namespace std; 3 4 int main() 5 6 int a, b, flag = 0; 7 while (cin >> a >> b) 8 9 if (b != 0) 10 11 if (flag == 1) 12 13 //flag = 1则表示已经有过输出 14 //在前面要先输出一个空格 15 cout << " "; 16 17 cout << a * b << " " << b - 1; 18 flag = 1; 19 20 21 22 if (flag == 0) 23 24 cout << "0 0"; 25 26 return 0; 27
以上是关于[PAT Basic] 1010.一元多项式求导的主要内容,如果未能解决你的问题,请参考以下文章