PAT 乙级 -- 1010 -- 一元多项式求导
2024-10-20 13:48:39
题目简述
设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为n*xn-1。)
输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。
输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是0,但是表示为“0 0”。
输入样例:
3 4 -5 2 6 1 -2 0
输出样例:
12 3 -10 1 6 0
思路
本题有一个小坑,即“输出格式”的最后一句,它的意思是如果输入的第一组数中指数是0时,必须输出0 0。
C++代码样例
#include <iostream>
#include <string>
#include <cstdio>
#include <cstdlib>
#include <vector>
#include <algorithm>
#include <functional>
#include <map>
using namespace std;
int main(void)
{
int i=0;
int array_count = 0;
int val[1005] = {0};
vector<int> vc1,vc2;
vector< pair<int,int> > vc3;
while(1)
{
if(i>1)
{
if(val[i-1]==0 && i%2==0)
{
break;
}
}
scanf("%d",&val[i]);
i++;
}
array_count = i;
for(i=0; i<array_count; i+=2)
{
vc1.push_back(val[i]);
vc2.push_back(val[i+1]);
}
for(i=0; i<vc1.size(); i++)
{
if(vc1.size()==1 && vc2.size()==1 && vc2[0]==0)
{
vc3.push_back(pair<int,int>(0,0));
break;
}
vc3.push_back(pair<int,int>(vc1[i]*vc2[i],vc2[i]-1));
}
for(i=0; i<vc3.size(); i++)
{
if(vc3[i].second >= 0)
{
printf("%d %d",vc3[i].first,vc3[i].second);
if(vc3.size()>1)
{
if(vc3[i+1].second>=0 && i!=vc3.size()-1)
{
printf(" ");
}
}
}
}
return 0;
}
最新文章
- Mvc视图引擎、寻址规则
- MyBatis入门学习教程-优化MyBatis配置文件中的配置
- 使用python脚本实现基于指定字符串的文本排序
- javascript之Array基础篇
- [BZOJ1604] [Usaco2008 Open] Cow Neighborhoods 奶牛的邻居 (queue &; set)
- mysql5.x安装脚本
- dogse入门指南
- 每天学点SpringCloud(六):Hystrix使用
- WPF参考
- 对nginx中location的认识
- (原)pycharm中debugger时console如何打开
- [Laravel] 09 - Functional models
- Microsoft MVP MSDN Magazine 最新期分享
- 自定义vue全局组件use使用
- luoguP4491 [HAOI2018]染色 广义容斥原理 + FFT
- Mysql 千万级快速查询|分页方案
- 字符测试篇isalnum isalpha isascii iscntrl isdigit isgraphis islower isprint isspace ispunct isupper isxdigit
- Buildroot 打包文件系统流程跟踪
- python画激活函数图像
- mysql 免安装版文件含义及作用
热门文章
- 使用CSS计数器美化数字有序列表
- 理解ASP.NET Core 中的WebSocket
- javascript处理HTML的Encode(转码)和解码(Decode)
- [个人总结]pytorch中model.eval()会对哪些函数有影响?
- 关于python中的[::-1],[:,:,::-1]的反转理解
- 上线 Python 应用仅需一条命令的开源框架:Zappa(详细教程)
- python文件操作以及循环小结
- SQL练习——LeetCode解题和总结(1)
- golang 实现最小二乘法拟合直线
- SpringBoot入门学习看这一篇就够了