【PAT B 1010,1011】一元多项式求导 ,A+B和C

 

目录

1010 一元多项式求导

1011 A+B 和 C

1010 一元多项式求导

设计函数求一元多项式的导数。(注:xn(n为整数)的一阶导数为nxn−1。)

输入格式:

以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数)。数字间以空格分隔。

输出格式:

以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。注意“零多项式”的指数和系数都是 0,但是表示为 0 0

输入样例:

3 4 -5 2 6 1 -2 0

输出样例:

12 3 -10 1 6 0
算法思路:

我们定义两个变量分别存储项的系数和指数,每读取一个项,就直接输出计算结果。

易错点:
  • 求导之后系数是零的项不输出。
  • 输出的最后一个数字之后不能有空格。
  • 如果多项式只有常数项,输出0 0。 
#include<bits/stdc++.h>
using namespace std;
using gg = long long;
int main()
{
	ios::sync_with_stdio;
	cin.tie(0);
	gg ci, ei;
	bool space = false;
	while (cin >> ci >> ei)
	{
		ci *= ei;
		--ei;
		if (ci != 0)
		{
			cout << (space ? " " : "") << ci << " " << ei;
			space = true;
		}
	}
	if (not space)
	{
		cout << "0  0";
	}
	return 0;
}

 

1011 A+B 和 C

给定区间 [−231,231] 内的 3 个整数 A、B 和 C,请判断 A+B 是否大于 C。

输入格式:

输入第 1 行给出正整数 T (≤10),是测试用例的个数。随后给出 T 组测试用例,每组占一行,顺序给出 A、B 和 C。整数间以空格分隔。

输出格式:

对每组测试用例,在一行中输出 Case #X: true 如果 A+B>C,否则输出 Case #X: false,其中 X 是测试用例的编号(从 1 开始)。

输入样例:

4
1 2 3
2 3 4
2147483647 0 2147483646
0 -2147483648 -2147483647

输出样例:

Case #1: false
Case #2: true
Case #3: true
Case #4: false

 算法思路:定义3个long long类型的变量,判断输出即可。

#include<bits/stdc++.h>
using namespace std;
using gg=long long;
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    gg a,b,c,i,T;
    cin>>T;
    for(i=1;i<=T;i++)
    {
        cin>>a>>b>>c;
        cout<<"Case #"<<i<<": "<<(a+b>c?"true":"false")<<'\n';
    }
    return 0;
}

 

  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈大大陈

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值