每日一题?(或者几题)

题目为洛谷P1067 [NOIP 2009 普及组] 多项式输出,应该算是一道比较简单的题,难度是普及-。题目如题就是输出一个多项式,但是极其容易因为没有考虑到特殊情况出错。这里贴一下自己写的题解。

#include<bits/stdc++.h>
using namespace std;

void shuchu(int a){
    if(a>1)
        cout<<"x^"<<a;
    if(a==1)
        cout<<"x";
}
int main() {
    int n,sign=0;
    int a[101];
    cin>>n;
    for(int i=0;i<=n;i++){
        cin>>a[i];
        if(a[i]<0)
            sign = -1;
        if(a[i]==0)
            continue;
        if(a[i]>0&&sign==-1)
            sign = 1;
        if(a[i]>0&&sign==1){
            cout<<"+";
        }
        if(sign==0)
            sign=1;
        if(abs(a[i])==1){
            if(n-i==0){
                cout<<a[i];
                shuchu(n-i); 
            }
            else{
                if(a[i]>0)
                   shuchu(n-i);
                if(a[i]<0){
                    cout<<"-";
                shuchu(n-i);
                }
                
            }
             
        }
        else{
            cout<<a[i];
            shuchu(n-i);
        }    
    }
    return 0;
}

我是通过分别判断系数、次数、符号来做的,可能稍显复杂。提醒各位多注意一下系数为1的情况,如此便能AP了。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇