洛谷P1067-多项式输出(模拟好题!)
题目描述:
一元nnn次多项式可用如下的表达式表示:
f(x)=anxn+an−1xn−1+⋯+a1x+a0,an≠0f(x)=a_nx^n+a_{n-1}x^{n-1}+\cdots +a_1x+a_0,a_n\ne 0 f(x)=anxn+an−1xn−1+⋯+a1x+a0,an=0
其中,aixia_ix^iaixi称为iii次项,aia_iai 称为iii次项的系数。给出一个一元多项式各项的次数和系数,请按照如下规定的格式要求输出该多项式:
多项式中自变量为x xx,从左到右按照次数递减顺序给出多项式。
多项式中只包含系数不为000的项。
如果多项式nnn次项系数为正,则多项式开头不出现“+”号,如果多项式nnn次项系数为负,则多项式以“-”号开头。
对于不是最高次的项,以“+”号或者“-”号连接此项与前一项,分别表示此项系数为正或者系数为负。紧跟一个正整数,表示此项系数的绝对值(如果一个高于000次的项,其系数的绝对值为111,则无需输出 111)。如果xxx的指数大于111,则接下来紧跟的指数部分的形式为“xbx^bxb”,其中 bb b为 xx x的指数;如果 xxx的指数为1 11,则接下来紧跟的指数部分形式为“xxx”;如果 xxx 的指数为0 00,则仅需输出系数即可。
多项式中,多项式的开头、结尾不含多余的空格。
输入:
输入共有 222 行
第一行1 11 个整数,nnn,表示一元多项式的次数。
第二行有 n+1n+1 n+1个整数,其中第i i i个整数表示第n−i+1 n-i+1n−i+1 次项的系数,每两个整数之间用空格隔开。
输出:
输出共 111 行,按题目所述格式输出多项式。
样例输入1:
5
100 -1 1 -3 0 10
样例输出1:
100x^5-x^4+x^3-3x^2+10
样例输入2:
3
-50 0 0 1
样例输出2:
-50x^3+1
程序代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{int n,a;cin>>n;for(int i=n;i>=0;i--)//从次数高的开始输出 {cin>>a;if(i==0)//次数为0,也就是常数项(单独处理) {if(a>0&&i!=n)//系数为正 且 次数不是最高次 cout<<"+";//先输出"+"号 if(a!=0)//系数不为0,就输出 cout<<a;continue;}if(a>1)//系数为正,且不等于1 {if(i!=n)//不是最高次 cout<<"+";//先输出"+"号 cout<<a<<"x";//再输出系数和对应的x if(i>1)cout<<"^"<<i;//最后输出次数(这个表示次数的符号"^"千万千万千万不能放在x后面输出) continue;//续上一行注释,因为如果放在x后面,但此时x的次数如果为1,那么只需要输出x即可, //如果放在x后面,而x的次数为1,则结果就输出x^,所以肯定WA(我在这就WA了两次!!!) } if(a<-1)//系数为负,且不等于-1 {cout<<"-";//无论哪一项,只要为负,就先输出"-"号 cout<<abs(a)<<"x";//再输出负系数的绝对值和x if(i>1)cout<<"^"<<i;//最后输出次数 continue;}if(a==0)//如果系数为0,直接跳过 continue;if(a==1)//系数为1(单独处理) {if(i!=n)//不是最高次 cout<<"+";//先输出"+"号 cout<<"x";//因为系数为1,所以只需输出x即可 if(i>1)cout<<"^"<<i;//最后输出次数 continue;}if(a==-1)//系数为-1(单独处理) {cout<<"-";//无论哪一项,只要为负,就先输出"-"号 cout<<"x";//系数为-1,且上一行已将负号输出,所以只需输出xif(i>1)cout<<"^"<<i;//最后输出次数 continue;}}return 0;
}
洛谷P1067-多项式输出(模拟好题!)相关推荐
- 洛谷 P1067 多项式输出
题目 (Markdown编辑器复制这个修改太麻烦,索性直接粘贴网址了...) 网址如下: 洛谷 P1067 多项式输出 题解 这是个简单的模拟题,不算复杂.题目大意就是给你一个数 n ,以及 n + ...
- 洛谷--P1067 多项式输出
题目描述 一元nn次多项式可用如下的表达式表示: 其中,a_ix^iaixi称为ii次项,a_iai 称为ii次项的系数.给出一个一元多项式各项的次数和系数,请按照如下规定的格式要求输出该多项式: ...
- 洛谷——P1067 多项式输出
https://www.luogu.org/problem/show?pid=1067#sub 题目描述 一元 n 次多项式可用如下的表达式表示: 其中,aixi称为 i 次项,ai 称为 i 次项的 ...
- 洛谷P1067 多项式输出
.. 题目描述 一元nn次多项式可用如下的表达式表示: f(x)=a_nx^n+a_{n-1}x^{n-1}+\cdots +a_1x+a_0,a_n\ne 0f(x)=anxn+an−1xn−1 ...
- 洛谷1067 多项式输出 解题报告
洛谷1067 多项式输出 本题地址: http://www.luogu.org/problem/show?pid=1067 题目描述 一元 n 次多项式可用如下的表达式表示: 其中,aixi称为 i ...
- 洛谷 1563 玩具谜题——模拟水题
题目:https://www.luogu.org/problemnew/show/P1563 模拟水题. #include<iostream> #include<cstdio> ...
- P1067 多项式输出(模拟)
题目链接 P1067 多项式输出 Luogu 应用 题库 训练 比赛 记录 讨论 21.2K 通过 74.5K 提交 题目提供者 CCF_NOI 评测方式 云端评测 标签 NOIp普及组2009 难度 ...
- 洛谷 10月 csp-s 模拟赛 T1,T2解析及代码
洛谷 10月 csp-s 模拟赛 T1,T2解析及代码 T1 Magenta Potion 题目描述 给定一个长为 nnn 的整数序列 aaa,其中所有数的绝对值均大于等于 222.有 qqq 次操作 ...
- 洛谷P1088.火星人【模拟/搜索/康托展开】
洛谷P1088.火星人[模拟/搜索/康托展开] 题干 题目描述 输入格式 输出格式 输入输出样例 说明/提示 题意 思路一--模拟 分析 上代码 思路二--搜索 分析 上代码 思路三--变进制数与康托 ...
- 洛谷CSP-J/S2020初赛模拟部分题解
说明 试题来源于洛谷CSP-J/S2020初赛模拟试题. 选择题 T1. 十进制数114的相反数的8位二进制补码是:(10001110) [解析]整数的二进制表示的最高位为符号位,用0表示" ...
最新文章
- 345 所开设人工智能本科专业高校名单大全
- Iptables 表和链之间的关系【未完成】
- 1521 error1
- python交作业的格式_python作业4
- SCSI 总线和协议
- sqlmap源码阅读
- python 读出指定的行_【python】有规律的文本中读取指定的行
- 如何简单粗暴地上手 TensorFlow 2.0?
- python怎么编写流氓软件_Python 编写强制性流氓软件, 可表白, 可其它!
- 值得分享的炒白银技巧有哪些?
- 如何查看内存条的实际使用频率
- 银行卡号码显示每隔4位数空一格
- win10莫名奇妙的卡死、小问题解决方案
- R语言剔除包含NA值的行
- Jmeter介绍与使用
- MacPorts使用
- 贝店创业可行性分析之第一章
- 走近Ts,用了爽,用后一直爽(一)
- 教你破解隔壁妹子wifi密码,成功率高达90%
- 2021年五月节日活动营销指导方案
热门文章
- c语言启动程序句柄无效,win7系统玩英雄联盟突然弹出“句柄无效”窗口的解决方法...
- 8.9 浮动 九宫格
- Connection terminated as request was larger than XXX
- 数据存储服务(存储服务器搭建细谈)
- kubernetes的eviction机制
- 当硅谷码农还在吃着火锅唱着歌,工作已经快没了
- android listview阻尼效果,自定义阻尼效果listview
- Kali渗透Windows Server 2003
- 【经验教程】支付宝怎么充值手机话费?
- 【汇编语言】第三章 寄存器(内存访问)