【PAT乙级】A+B和C
题目描述:
给定区间[-2的31次方,2的31次方]内的3个整数A,B和C,请判断A + B是否大于C.
<h3输入描述:
输入第1行给出正整数T(<= 10),是测试用例的个数。随后给出Ť组测试用例,每组占一行,顺序给出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
解题思路:
首先看到这道题给定的区间是[-2的31次方,2的31次方],直接无脑用Python的。当然用C++也可以,不过要开long long,因为int会数据溢出。
PyAC代码:
for i in range(eval(input())):
a,b,c=map(int,input().split())
if a+b>c:
print("Case #{}: true".format(i))
else:
print("Case #{}: false".format(i))
CppAC代码:
#include <bits/stdc++.h>
using namespace std;
#define Up(i,a,b) for(int i = a; i <= b; i++)
typedef long long ll;
int main()
{
ios::sync_with_stdio(false);
cin.tie(0), cout.tie(0);
int t;
cin >> t;
Up(i,1,t)
{
ll a,b,c;
cin >> a >> b >> c;
cout << "Case #" << i << ": ";
if(a+b > c)
{
cout << "true" << endl;
}
else cout << "false" << endl;
}
return 0;
}
原文链接:【PAT乙级】A+B和C
麦芽雪冷萃 版权所有,转载请注明出处。
还没有任何评论,你来说两句吧!