PAT--1010 一元多项式求导
程序员文章站
2022-03-07 20:56:15
设计函数求一元多项式的导数。输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是表示为 0 0。输入样例:3 4 -5 2 6 1 -2 0输出样例:12 3 -10 1 6 0分析把输入样例两个两个一组,一个是系数一个是指数,然后用读取字符的方式得到每一个数,保存到数组中,要注意的是数字可...
设计函数求一元多项式的导数。
输入格式:
以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。
输出格式:
以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是表示为 0 0。
输入样例:
3 4 -5 2 6 1 -2 0
输出样例:
12 3 -10 1 6 0
分析
把输入样例两个两个一组,一个是系数一个是指数,然后用读取字符的方式得到每一个数,保存到数组中,要注意的是数字可能为负数。
#include<iostream>
#include<stdio.h>
using namespace std;
int main(){
int ques[3000]; //保存问题
//int ans[300]; //保存答案
int len=1,i;
bool tag=0;
char ch=getchar();
while(ch!='\n'){
if(ch!=' '){
int now=0;
if(ch!='-'){ //如果不是负号
while(ch!=' ' && ch!='\n'){
now=(ch-'0')+now*10;
ch=getchar();
}
}
else if(ch=='-'){
ch=getchar();
while(ch!=' ' && ch!='\n'){
now=(ch-'0')+now*10;
ch=getchar();
}
now=-1*now;
}
ques[len++]=now;
}
if(ch!='\n')
ch=getchar();
}
for(i=1;i<len-1;i+=2){
if(ques[i+1]!=0){
if(tag)
cout<<' ';
cout<<ques[i]*ques[i+1]<<' '<<ques[i+1]-1;
tag=1;
}
}
//cout<<ques[i]*ques[i+1]<<' '<<ques[i+1]-1;
return 0;
}
本文地址:https://blog.csdn.net/WILDCHAP_/article/details/107287786