• 数据结构练习 02-线性结构1. 一元多项式求导 (25)


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

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

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

    输入样例:

    3 4 -5 2 6 1 -2 0
    
    输出样例:
    12 3 -10 1 6 0
     
    #include<iostream>
    #include<string>
    using namespace std;
    typedef struct Lnode{
        int coe;
        int index;
        struct Lnode *next;
    }pol;
    int main(){
        int coe,index,n=0;
        pol *head=new pol;
        pol *p=new pol,*q;
        head->next=p;
         while(cin>>coe>>index) 
        {
            
            p->coe=coe;
            p->index=index;
            n++;
            q=p;
            p= new pol;
            q->next=p;
        } 
        q->next=NULL;
        delete p;
        p=head->next;
        while(p!=NULL){
            p->coe=p->coe*p->index;
            if(p->index!=0)
                p->index=p->index-1;
            p=p->next;
        }
        p=head->next;
        while(p!=NULL){
            if(p->next!=NULL && p->index==0 && p->next->index==0){
                q=p->next;
                p->next=q->next;
                delete q;
            }
            if(p->next!=NULL &&  p->next->coe==0){
                q=p->next;
                p->next=q->next;
                delete q;
            }
            p=p->next;
        }
        p=head->next;
        while(p!=NULL){
            cout<<p->coe<<" "<<p->index;
            if(p->next!=NULL){
                cout<<" ";
            }
            p=p->next;
        }
        return 0;
    }

    image

    经过19次提交,总算是成功了。读懂题很重要啊
  • 相关阅读:
    学习笔记(4)---JQuery
    学习笔记---ES6
    angular.js的学习笔记(1)
    vue.js学习笔记(1)
    HTML5“爱心鱼”游戏总结
    学习笔记(3)---综合
    学习笔记(2)---CSS中的易混淆点
    学习笔记(1)----水平垂直居中的方法
    javascript:void(0)是什么意思
    private Int32? m_shopid;
  • 原文地址:https://www.cnblogs.com/Zengineer/p/4377588.html
Copyright © 2020-2023  润新知