C++一元多项式求导

这个题难度不大但是坑有点多,要考虑的点有几个:
1.测试用例为x 0 这个直接输出 0 0即可。
2.注意空格的输出
3.测试点3我好几次都没过,最后参考了别的答案加以修改才通过。

测试点3没过的代码:
1 #include <iostream>
2 #include <vector>
3
4 using namespace std;
5
6 struct Derivative
7 {
8 int ratios;//系数
9 int time;//次数
10 };
11
12 int main()
13 {
14 int ratios;
15 int time;
16
17 //接收输入
18 vector<Derivative> derivatives;
19 while(cin >> ratios >> time)
20 {
21 Derivative d;
22 d.ratios = ratios;
23 d.time = time;
24 derivatives.push_back(d);
25 char c = cin.get();
26 if(c == '\n')
27 break;
28 }
29
30 for(vector<Derivative>::iterator it = derivatives.begin();it != derivatives.end();++it)
31 {
32 if((*it).time != 0)
33 {
34 (*it).ratios *= (*it).time;
35 (*it).time--;
36 cout << (*it).ratios << " " << (*it).time;
37 if((*it).time != 0 && it != derivatives.end()-1)
38 cout << " ";
39 }
40 if(it == derivatives.begin() && (*it).time == 0)
41 {
42 cout << "0 0";
43 }
44 }
45 return 0;
46 }
只有在每组结束后输出空格的代码不同。
最终的代码:
1 #include <iostream>
2 #include <vector>
3
4 using namespace std;
5
6 struct Derivative
7 {
8 int ratios;//系数
9 int time;//次数
10 };
11
12 int main()
13 {
14 int ratios;
15 int time;
16
17 //接收输入
18 vector<Derivative> derivatives;
19 while(cin >> ratios >> time)
20 {
21 Derivative d;
22 d.ratios = ratios;
23 d.time = time;
24 derivatives.push_back(d);
25 char c = cin.get();
26 if(c == '\n')
27 break;
28 }
29
30 for(vector<Derivative>::iterator it = derivatives.begin();it != derivatives.end();++it)
31 {
32 //次数不为0时,就输出经过处理的系数和指数
33 if((*it).time != 0)
34 {
35 if(it != derivatives.end() && it != derivatives.begin())
36 cout << " ";
37 (*it).ratios *= (*it).time;
38 (*it).time--;
39 cout << (*it).ratios << " " << (*it).time;
40 }else if((*it).time == 0 && it == derivatives.begin())
41 {
42 //第一项的次数就为0时,直接输出0 0
43 cout << "0 0";
44 }
45 }
46
47
48 return 0;
49
50 }
C++一元多项式求导的更多相关文章
- PAT线性结构_一元多项式求导、按给定步长反转链表、出栈序列存在性判断
02-线性结构1. 一元多项式求导 (25) 设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为n*xn-1.) 输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过100 ...
- PAT乙级 1010. 一元多项式求导 (25)
1010. 一元多项式求导 (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 设计函数求一元多项式的导数.(注:xn(n为整数)的一 ...
- PAT-乙级-1010. 一元多项式求导 (25)
1010. 一元多项式求导 (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 设计函数求一元多项式的导数.(注:xn(n为整数)的一 ...
- [C++]PAT乙级1010. 一元多项式求导 (25/25)
/* 1010. 一元多项式求导 (25) 设计函数求一元多项式的导数.(注:x^n(n为整数)的一阶导数为n*x^n-1.) 输入格式: 以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1 ...
- PAT 乙级 1010 一元多项式求导 (25) C++版
1010. 一元多项式求导 (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 设计函数求一元多项式的导数.(注:xn(n为整数)的一 ...
- PAT 1010 一元多项式求导 (25)(STL-map+思路)
1010 一元多项式求导 (25)(25 分)提问 设计函数求一元多项式的导数.(注:x^n^(n为整数)的一阶导数为n*x^n-1^.) 输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均 ...
- 【PAT】1010. 一元多项式求导 (25)
1010. 一元多项式求导 (25) 设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为n*xn-1.) 输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数 ...
- 【算法笔记】B1010 一元多项式求导
1010 一元多项式求导 (25 分) 设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为nxn−1.) 输入格式: 以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 ...
- pat02-线性结构2. 一元多项式求导 (25)
02-线性结构2. 一元多项式求导 (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 设计函数求一元多项式的导数.(注:xn(n为整 ...
- PAT——甲级1065:A+B and C(64bit) 乙级1010一元多项式求导
甲级1065 1065 A+B and C (64bit) (20 point(s)) Given three integers A, B and C in [−263,263], you ...
随机推荐
- zabbix 报警发送企业威信
1.组册企业微信,创建应用 2.下载脚本文件: https://raw.githubusercontent.com/OneOaaS/weixin-alert/master/weixin_linux_a ...
- centos redhat 安装g++
正确安装命令 : yum install gcc-c++ libstdc++-devel 安装后可以在/bin/找到
- ONVIF客户端中预置位设置代码实现过程
simpleOnvif的功能:提供支持Windows.Linux.arm.Android.iOS等各种平台的SDK库,方便集成,二次开发 之前跟大家分享了我们安徽思蔷信息科技的simpleOnvif的 ...
- Qt 使用大神插件快速创建树状导航栏
前言 本博客仅仅记录自己的采坑过程以及帮助网友避坑,方便以后快速使用自定义控件,避免重复出错. 下载插件 大神 Github Qt 自定义控件项目地址:https://github.com/feiya ...
- 六问六答理解ForkJoin原理
摘要:ForkJoin线程池是将任务分割为子任务,有可能子任务还是很大,还需要进一步拆解,最终得到足够小的任务. 本文分享自华为云社区<ForkJoin线程池的学习和思考>,作者:brea ...
- 史上最简单的排序算法?看起来却满是bug
大家好,我是雨乐. 今天在搜论文的时候,偶然发现一篇文章,名为<Is this the simplest (and most surprising) sorting algorithm ever ...
- layui 如果调用 from 内嵌入的 iframe子页面方法
(人笨,占时想法的办法,不要骂,不要骂,怕了怕了,想到别的会来改的) 父页面; <%@ page language="java" contentType="text ...
- LeetCode->链表反转
这是一个很基础的题目.今天处理了一下,不论是以双指针迭代.递归等方法,都能处理,但是也使这个题目更为典型. 剑指 Offer 24. 反转链表 - 力扣(LeetCode) (leetcode-cn. ...
- mybatis判断集合长度
使用mybatis框架在写sql的时候碰到一个异常: 1064 - You have an error in your SQL syntax; check the manual that corres ...
- 全面了解一致性哈希算法及PHP代码实现
在设计一个分布式系统的架构时,为了提高系统的负载能力,需要把不同的数据分发到不同的服务节点上.因此这里就需要一种分发的机制,其实就是一种算法,来实现这种功能.这里我们就用到了Consistent Ha ...