1 条题解

  • 0
    @ 2025-8-24 21:20:34

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar Loyal_Soldier
    一只小菜蛙 | 一只爱玩PVZ杂交版的蛙 | 天生我菜必有用,千金散尽还复来 | 这个人很菜,请忽略他的红名 | 小号@kaikai_qwq

    搬运于2025-08-24 21:20:33,当前版本为作者最后更新于2025-01-19 08:16:50,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    思路

    这一题我们要分情况讨论。

    情况分为以下几种:

    • 当前 ini\not= n 并且输入的数是正数,输出 +
    • 当前 i0i\not= 0 并且输入的数是 1-1,输出 -
    • 输入的数的绝对值大于 11 或者当前 i=0i=0,输出输入的数。
    • 当前 i>1i>1,输出 x^ii
    • 当前 i=1i=1,输出 x

    注意,以上情况当且仅当输入的数不为 00 时才成立。

    代码

    #include<bits/stdc++.h>
    #define int long long
    using namespace std;
    signed main(){
    	int n;
    	cin>>n;
    	for(int i=n;i>=0;i--){//注意,循环要从大到小
    		int x;
    		cin>>x;
    		if(x){
    			if(i!=n&&x>0)
    				cout<<'+';
    			if(i!=0&&x==-1)
    				cout<<'-';
    			if(abs(x)>1||i==0)
    				cout<<x;
    			if(i>1)
    				cout<<"x^"<<i;
    			if(i==1)
    				cout<<'x';
    		}
    	}
    	return 0;
    }
    
    • 1

    信息

    ID
    69
    时间
    1000ms
    内存
    128MiB
    难度
    2
    标签
    递交数
    1
    已通过
    1
    上传者