首页 > 其他 > 详细

洛谷P1067 多项式输出题解 题解

时间:2020-03-15 00:39:36      阅读:69      评论:0      收藏:0      [点我收藏+]

# 洛谷P1067 多项式输出题解

P1067多项式输出 题目地址
该题其实不是很难,思路简单,但是很让人难受,要讨论各种情况。
我写代码的思路就是把所有情况分为四种:
1、最高次项的处理;
2、常数项的处理;
3、一次项的处理;
4、其他非特殊项的处理。
为什么要这么分类呢?分类的依据是因为前三类关于项数系数的处理比较复杂,考虑到的情况比较多。
另外还有在我个人认为此题关于最高次项系数能否为0的问题表述的不清楚。

相关代码我已经用了批注,代码写的不好,水平有待提高,我会继续努力的。

话不多说,请看代码:

/*
 * 洛谷P1067多项式输出
 * 2020 03 13
 * write by Miubai
*/
#include<stdio.h>

#define A a[i]

int main(void){
    int a[201];
    int i,n,b;

    scanf("%d",&n);
    b = n;

    for(i = 0;i<=n;i++){
        scanf("%d",&A);
    }

    for(i = 0;i<=n;i++){
        if(n == b){                                 //第一项判断
            if (1 == A)
                printf("x^%d",b);
            else if (-1 == A)
                printf("-x^%d",b);
            else if (A>0)
                printf("%dx^%d",A,b);
            else if(A<0)
                printf("%dx^%d",A,b);
        }else if(1 == b) {                          //一次项的判断
            if (1 == A)
                printf("+x");
            else if (-1 == A)
              printf("-x");
            else if(A>0)
                printf("+%dx",A);
            else if (A<0)
                printf("%dx",A);
        }else if (0 == b){                         //常数项的判断
            if (A>0)
                printf("+%d",A);
            else if (A<0)
                printf("%d",A);
        }else {                                    //其他非特殊项
            if(A > 0){                              //系数大于0
                if(A == 1)
                    printf("+x^%d",b);
                else
                    printf("+%dx^%d",A,b);
            }

            if(A<0){                            //系数小于0
                if(-1 == A)
                    printf("-x^%d",b);
                else
                    printf("%dx^%d",A,b);
            }
        }

        b--;
    }
    return 0;
}

谢谢!

洛谷P1067 多项式输出题解 题解

原文:https://www.cnblogs.com/Miubai-blog/p/12495207.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!