首页 > 其他分享 >CSP历年复赛题-P1067 [NOIP2009 普及组] 多项式输出

CSP历年复赛题-P1067 [NOIP2009 普及组] 多项式输出

时间:2024-05-28 13:32:50浏览次数:23  
标签:输出 cout int 多项式 NOIP2009 次数 CSP P1067

原题链接:https://www.luogu.com.cn/problem/P1067

题意解读:

模拟法依次输出多项式内容即可,但是需要考虑的周全,主要有以下关键点:

1、系数为0时不输出多项式

2、第一个符号,只有负号才输出

3、次数不为0时,不输出为1的系数;次数为0时,输出所有系数

4、次数为1时,不输出次数;次数为0时不输出x^次数;次数大于1时,才输出完整x^次数

100分代码:

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

int main()
{
    int n;
    cin >> n;

    string result = "";

    int a;

    bool first = true; //是否第一次输出符号
    for(int i = 1; i <= n + 1; i++)
    {
        cin >> a;
        int k = n - i + 1; //多项式的次数
        if(a) //如果系数不为0才输出
        {
            if(first) 
            {
                if(a < 0) cout << "-"; //如果第一次输出符号,只输出负号
                first = false; //同时改变条件变成不是第一次
            }
            else cout << (a > 0 ? '+' : '-'); //如果不是第一次输出符号,正负都输出
                
            if(abs(a) != 1 || !k) cout << abs(a); //系数绝对值不为1,或者次数是0,输出系数绝对值
            if(k == 1) cout << "x"; //次数为1,只输出x
            if(k > 1) cout << "x^" << k; //次数大于1,输出x^次数
        }
    }

    return 0;
}

 

标签:输出,cout,int,多项式,NOIP2009,次数,CSP,P1067
From: https://www.cnblogs.com/jcwy/p/18217799

相关文章

  • 利用PyCSP3库(含大量全局约束)进行组合约束建模
    文章目录1.什么是PyCSP3?2.安装方法(Windows)2.1通过Google_colab直接运行2.2通过pip进行安装3.快速入门3.1声明变量3.2更新约束3.3定义目标3.4常用的全局约束1.什么是PyCSP3?PyCSP3是Python中的一个库,用于对组合约束问题进行建......
  • CSP历年复赛题-P1057 [NOIP2008 普及组] 传球游戏
    原题链接:https://www.luogu.com.cn/problem/P1057题意解读:n个人围一圈,从1开始传球m次,每次可以往左或右传,计算球再次传给1的方案数。解题思路:求方案数,通常就是DP问题,此题DP状态并不难想,如果实在不会,也可以通过DFS暴搜得部分分。1、DFS60分代码:#include<bits/stdc++.h>using......
  • CSP历年复赛题-P1055 [NOIP2008 普及组] ISBN 号码
    原题链接:https://www.luogu.com.cn/problem/P1055题意解读:验证ISBN最后一位是否正确。解题思路:直接模拟,不多说,上代码。100分代码:#include<bits/stdc++.h>usingnamespacestd;intmain(){strings;cin>>s;intcode=0;intcnt=0;for(inti......
  • CSP历年复赛题-P1096 [NOIP2007 普及组] Hanoi 双塔问题
    原题链接:https://www.luogu.com.cn/problem/P1096题意解读:汉诺双塔的移动次数,与经典汉诺塔的区间在于同一个尺寸盘子有两个。解题思路:可以直接用经典汉诺塔方法来计算,双塔的结果就最终乘以2即可。首先想到的是递归,但是由于数据量n最大200,递归会超时,但是50%的样例应该没问题,先......
  • CSP历年复赛题-P1095 [NOIP2007 普及组] 守望者的逃离
    原题链接:https://www.luogu.com.cn/problem/P1095题意解读:在有限的时间内,通过跑步或者闪烁两种方式,能跑出的最远距离是多少,以及是否能跑出出口。解题思路:1、贪心法每一秒钟,都有两种选择:跑步(17米)、闪烁(60米,前提是蓝够10点,否则等待1s恢复4点蓝)经过计算,恢复足够的蓝到闪烁需要3.......
  • 【csp202403-1】词频统计【第33次CCF计算机软件能力认证】
    问题描述在学习了文本处理后,小P对英语书中的......
  • CSP历年复赛题-P1094 [NOIP2007 普及组] 纪念品分组
    原题链接:https://www.luogu.com.cn/problem/P1094题意解读:贪心选择解题思路:贪心策略:将纪念品按价格由小到大排序,优先一大、一小,如果价格之和不超限,则分为一组,如果超限,则大的单独分为一组,重复以上过程,直到所有数据都遍历到,采用一头一尾双指针即可。证明:如果最大价格不是和最......
  • CCF-CSP认证 2024年3月 4.化学方程式配平
    题解:首先完成数据的读入,然后高斯消元求秩按题意解即可#pragmaGCCoptimize(2,3,"Ofast","inline")#include<bits/stdc++.h>usingnamespacestd;constintmaxn=100;usingmatrix=double[maxn][maxn];usingvect=array<double,maxn>;constdoub......
  • P5662 [CSP-J2019] 纪念品
    原题链接题解定义\(dp[i]\)为今天有\(i\)元钱花时,明天卖能纯赚多少钱(这里有一个递归的思想,不需要考虑\(dp[k-a[i][j]]\)能否买得起今天的产品)如果\(dp[i-1]=k\)那么\(dp[i]\geqk\),所以存在一个\(i\)使得钱全部花完然后赚\(k\)元code#include<bits/stdc++.h>u......
  • mx 五月 csp-j
    T1考虑只有第二种操作。显然可以维护\(a_i\)代表当前序列的第\(i\)个数是什么。观察到变换只和\(k\%3\)的值有关。对于第一种操作,显然可以令\(k\leftarrowk\%n\)。观察到这种变换将整个序列视为一个环更方便一点,于是维护变换后第一个数的下标是多少。输出时按照环的......