zoukankan      html  css  js  c++  java
  • PTA 5-16 一元多项式求导 (25) (PAT-B 1010)

    题目:http://www.patest.cn/contests/pat-b-practise/1010

    设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为n*xn-1。)

    输入格式:

    以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。

    输出格式:

    以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是0,但是表示为“0 0”。

    输入样例:

    3 4 -5 2 6 1 -2 0

    输出样例:

    12 3 -10 1 6 0

    法一:

    #include <stdlib.h>
    #include <string.h>
    #include <iostream>
    using namespace std;
    int main()
    {
        int a,b;
        int flag = 0;
        b = 1;
        while(cin>>a>>b){
            if(b>0){
                if(flag ==0){
                    cout<<a*b<<' '<<b-1;
                    flag = 1;
                }
                else
                    cout<<' '<<a*b<<' '<<b-1;
            }
        }
        if(flag ==0)
            cout<<"0 0";
        //system("pause");
        return 0;
    }
    

    法二:

    #include <iostream>
    #include <sstream>
    using namespace std;
    int main()
    {
        string s;
        stringstream ss;
        getline(cin,s);
        ss << s;
        int coef,exp;
        bool flag = true;
        int num = 0;
        while(ss >> coef >> exp){
                num ++;
                if(exp == 0)
                    continue;
                if(flag){
                    cout << coef * exp << " " << exp-1;
                    flag = !flag;
                }
                else
                    cout << " " << coef * exp << " " << exp-1;
        }
        if(num == 1 && exp == 0)
            cout << "0" << " " << "0";
        cout << endl;
    }
  • 相关阅读:
    并查集
    归并排序
    树的操作
    活动安排
    动态规划-股票交易
    网络流
    linux 展开
    linux 反引号、单引号、双引号
    linux 命令行快捷键
    判断一个点是否在三角形内部和边界上
  • 原文地址:https://www.cnblogs.com/claremore/p/4802319.html
Copyright © 2011-2022 走看看