PAT :计算机程序设计能力考试:一个高校编程学习赛,内容基础,据说题目描述含糊不清,造成诸多理解错误。
第一观感是:输入输出样例极少,未给学生充分理解题目,提供更多辅助。
PAT 乙级:只涉及基础编程,最难到排序算法。适合基础语法学习阶段的同学。
问题描述
给定区间 [−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 |
样例解释:无
题解 1
思路分析:直接接收输出,并判断即可。坑点:数据区间是 [−231 ,231],int
刚好**越界一点点
**。
#include<iostream>
using namespace std;
int main() {
int n;
cin >> n;
long a, b, c;
// 此题有坑
int i = 0;
while(n--) {
cin >> a >> b >> c;
cout << "Case #" << i + 1 << ": ";
cout << (a > c - b ? "true" : "false") << endl;
i ++;
}
return 0;
}