zoukankan      html  css  js  c++  java
  • 数据结构练习 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次提交,总算是成功了。读懂题很重要啊
  • 相关阅读:
    Linux安全应用之防垃圾邮件服务器的构建
    Postfix邮件系统安装配置视频
    Linux常用的安全工具
    Linux系统安全加固(一)
    全球开源软件发展趋势分析
    安装配置FreeBSD9全过程体验
    P1441-砝码称重
    POJ-2376 Cleaning Shifts
    P1514-引水入城
    P1378-油滴扩展
  • 原文地址:https://www.cnblogs.com/Zengineer/p/4377588.html
Copyright © 2011-2022 走看看