2019-01-24-PAT乙级-1011-A+B和C
原文链接:1011 A+B 和 C
github代码地址:HibisciDai/OJ-PAT-ACM
2019-01-24-PAT乙级-1011-A+B和C
编程描述
给定区间 [$ -2^{31} $, $ 2^{31} $ ]内的 3 个整数 A、B 和 C,请判断 A + B 是否大于 C。
辅助描述
1 2 3 4 5
| 作者: HOU, Qiming 单位: 浙江大学 时间限制: 400 ms 内存限制: 64 MB 代码长度限制: 16 KB
|
输入格式
输入第 1 行给出正整数 T (≤10),是测试用例的个数。随后给出 T 组测试用例,每组占一行,顺序给出 A、B 和 C。整数间以空格分隔。
输出格式
对每组测试用例,在一行中输出 Case #X: true
如果 A+B>C,否则输出 Case #X: false
,其中 X
是测试用例的编号(从 1 开始)。
输入样例
1 2 3 4 5
| 4 1 2 3 2 3 4 2147483647 0 2147483646 0 -2147483648 -2147483647
|
输出样例
1 2 3 4
| Case #1: false Case #2: true Case #3: true Case #4: false
|
算法实现
JAVA(openjdk)
代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| import java.util.Scanner; import java.math.BigInteger;
public class Main { public static Scanner sc = new Scanner(System.in); public static int total = 0; public static BigInteger a, b, c, sum;
public static void main(String[] args) { total = sc.nextInt(); String[] s1 = new String[total]; for (int i = 0; i < total; i++) { a = sc.nextBigInteger(); b = sc.nextBigInteger(); c = sc.nextBigInteger(); sum = a.add(b); String s = ""; if (sum.compareTo(c) == 1) { s = "Case #" + (i + 1) + ": true"; } else { s = "Case #" + (i + 1) + ": false"; } s1[i] = s; } sc.close();
for (int i = 0; i < total; i++) { System.out.println(s1[i]); } } }
|
运行结果
1 2 3 4 5 6 7
| 状态 分数 题目 编译器 耗时 用户 答案正确 15 1011 Java (openjdk) 116 ms HibisciDai 测试点 结果 耗时 内存 0 答案正确 116 ms 18036 KB 1 答案正确 86 ms 16968 KB 2 答案正确 95 ms 15480 KB
|
C++(g++)
代码
1 2 3 4 5 6 7 8 9 10 11 12 13
| #include <stdio.h> int main() { int T; scanf("%d", &T); for (int i=1; i<=T; i++) { long long A,B,C; scanf("%lld %lld %lld", &A, &B, &C); if (A+B>C) { printf("Case #%d: true\n", i); } else printf("Case #%d: false\n", i); } return 0; }
|
运行结果
1 2 3 4 5 6
| 状态 分数 题目 编译器 耗时 用户 答案正确 15 1011 C++ (g++) 1 ms HibisciDai 测试点 结果 耗时 内存 0 答案正确 1 ms 276 KB 1 答案正确 1 ms 384 KB 2 答案正确 1 ms 244 KB
|