PAT乙级1010
1010 一元多项式求导 (25 分)
设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为nxn−1。)
输入格式:
以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。
输出格式:
以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是表示为 0
。
0
输入样例:
3 4 -5 2 6 1 -2 0
输出样例:
12 3 -10 1 6 0
1 #include <bits/stdc++.h> 2 using namespace std; 3 int main () 4 { 5 int a,b; 6 cin>>a>>b; 7 if(a==0&&b==0) 8 cout<<0<<" "<<0; 9 else if(b==0) 10 cout<<0<<" "<<0; 11 else if(b==1) 12 cout<<a<<" "<<0; 13 else if(b) 14 cout<<a*b<<" "<<b-1; 15 while(cin>>a>>b) 16 { 17 if(a==0&&b==0) 18 cout<<" "<<0<<" "<<0; 19 else if(b==1) 20 cout<<" "<<a<<" "<<0; 21 else if(b) 22 cout<<" "<<a*b<<" "<<b-1; 23 } 24 return 0; 25 }
思路:
a==0&&b==0 输出0 0
a!=0&&b==0 输出 a 0
b==1 输出 a*b b-1
当该多项式只有一项时,满足a==0&&b==0 输出0 0
当该多项式有多项时,满足a==0&&b==0 不输出任何数据