计算多项式的导函数(缓存区问题)

总时间限制:

1000ms

内存限制:

65536kB

描述

计算多项式的导函数是一件非常容易的任务。给定一个函数f(x),我们用f'(x)来表示其导函数。我们用x^n来表示x的n次幂。为了计算多项式的导函数,你必须知道三条规则:

(1)、(C)' = 0 如果C是常量

(2)、(C*x^n)' = C*n*x^(n-1) 如果n >= 1且C是常量

(3)、(f1(x)+f2(2))' = f1'(x)+f2'(x)

容易证明,多项式的导函数也是多项式。

现在,请你编写一个程序,给定一个不包含负系数且已合并好同幂次项的多项式f(x),计算出它的导函数。

输入

输入有两行。
第一行是一个整数n(0 <= n <= 100)表明多项式的最高次幂为n。
第二行包含n+1个非负整数,Cn ,Cn-1 ,Cn-2 ,Cn-3 ,Cn-4 ,… ,C1,C0(0 <= Ci <= 1000)且Cn != 0。Ci是幂次为i的项的系数。

输出

在一行内输出f'(x)的结果。
(1) 如果g(x) = 0那么直接输出0
(2) 如果g(x)形如Cm(x^m)+Cm-1(x^(m-1))+…+C0(Cm!=0)那么输出Cm…C0
(3) 相邻整数之间有单个空格。

样例输入

3
0
10
2
3 2 1
3
10 0 1 2

样例输出

0
6 2
30 0 1

此问题的样例有些错误,还要看文字要求,以前我竟然都不知道cin循环内输入,可以输入多组数据(cin把数据送入缓冲区),然后按下回车可以逐个执行,直到循环结束,这都一个学期过去了,我都学的什么!!!QAQ

以下是代码

#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int main()
{
    int a,b,i,j;
    cin>>a;j=a;
    if(a==0) {cin>>b;cout<<0;return 0;}
    for(i=1;i<=a;i++,j--)
  {

    cin>>b;
    cout<<b*j<<" ";

   }
}

猜你喜欢

转载自blog.csdn.net/qq_43408238/article/details/86532685