• 牛客网 PAT 算法历年真题 1001 : A+B和C (15)


    1001 : A+B和C (15)

    时间限制 1000 ms 内存限制 32768 KB 代码长度限制 100 KB 判断程序 Standard 

    题目描述

    给定区间[-2的31次方, 2的31次方]内的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


    思路分析:

    这其实就是一个比较大小的算术题,就相当于判断三角形的两边之和是否大于第三边,从而确认是否是合法的三角形,只不过咱题目里的数可以是负数:

    ①因为A、B、C的区间为[-2的31次方, 2的31次方],所以int是存不下的,需要用lang类型的变量来接收
    ②判断A+B是否大于C,如果大于,输出Case #i: true,否则输出Case #i: false
    ③如果还有测试用例,继续从①开始执行,否则结束程序


    java 代码如下:
    import java.util.Scanner;
    
    public class Main {
        public static void main(String[] args) {
            Scanner sca = new Scanner(System.in);
            int N = sca.nextInt();
            long a,b,c;
            boolean[] n = new boolean[N];
            for (int i = 0; i < N; i++) {
                a = sca.nextLong();
                b = sca.nextLong();
                c = sca.nextLong();
                if(a+b>c)
                    n[i] = true;
                else
                    n[i] = false;
            }
            for (int i = 0; i < N; i++) {
                System.out.println("Case #"+(i+1)+": "+n[i]);
            }
        }
    }



    作者:十八岁

    -------------------------------------------

    如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

  • 相关阅读:
    Eclipse 读取config目录下文件
    cakephp 中Console / Shell 有什么优点?
    cakephp中使用 find('count')方法
    [转]using components in Cakephp 2+ Shell
    [转]Git for windows 下vim解决中文乱码的有关问题
    在Foxmail中添加阿里云企业邮箱账号
    Cakephp在Controller中显示sql语句
    java线程的基本概念
    mysql varchar到底能存多少字符。
    mysql 联合索引匹配原则
  • 原文地址:https://www.cnblogs.com/l199616j/p/10307043.html
Copyright © 2020-2023  润新知