1010 一元多项式求导 (25 分)

题目链接

https://pintia.cn/problem-sets/994805260223102976/problems/994805313708867584

分析

我个人感觉这道题表述有些歧义。
题目说:
输入多项式非零项系数和指数
输出导数多项式非零项的系数和指数
(明明要求的是非零项)
可是事实:
(1) 要是多项式的第一项的指数就为0的话,那么它求导后的系数和指数都为0,按题目要求的话是不需要输出的。可是事实上是要输出的。

0 0

(2)要是多项式的第一项指数不为0,而多项式的最后一项的指数是0的话,该项求导后的系数和指数自然都是0。这时确实更它题目要求的一样,不用输出它了。

代码

#include <iostream>
#include <string>
using namespace std;

int main() {
    int a, n; //a为系数、n为指数
    //先判断多项式的第一项
    cin>>a>>n;
    if(n == 0){
        cout<<"0 0";
    }else {
        cout<<a*n<<" "<<n-1;
    }
    while(cin>>a>>n && n != 0){
        cout<<" "<<a*n<<" "<<n-1;
    }
    return 0;
}