• 1065 A+B and C (64bit) (20分)(水)


    Given three integers A, B and C in [−], you are supposed to tell whether A+B>C.

    Input Specification:

    The first line of the input gives the positive number of test cases, T (≤). Then T test cases follow, each consists of a single line containing three integers A, B and C, separated by single spaces.

    Output Specification:

    For each test case, output in one line Case #X: true if A+B>C, or Case #X: false otherwise, where X is the case number (starting from 1).

    Sample Input:

    3
    1 2 3
    2 3 4
    9223372036854775807 -9223372036854775808 0
    

    Sample Output:

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

    题目分析:利用long long 存储数据 但是要注意对于num的判断 因为long long 最大存储范围是从负2的63次 到 正2的63次减一
    如果这个和大于或小于这个范围 就要先判断再输出
    对于这道题来说
    数的范围是 $[-2^63,2^63]$ 而longlong的范围是$[-2^63,2^63-1]$
    若两个数的和过大到区间$[2^63,2^64-2] 那么会溢出改变到区间 [-2^63,-2](对于非浮点数来说上界加一会变为加一后的值取负 故(2^63-1+1)会变为-2^63 -2是根据公式 (2^64-2)%2^64=-2求得$
    同理 若过小到区间$[-2^64,-2^63-1] 会溢出改变到区间[0,2^63-1]$

     1 #define _CRT_SECURE_NO_WARNINGS
     2 #include <climits>
     3 #include<iostream>
     4 #include<vector>
     5 #include<queue>
     6 #include<map>
     7 #include<set>
     8 #include<stack>
     9 #include<algorithm>
    10 #include<string>
    11 #include<cmath>
    12 using namespace std;
    13 string A, B, C;
    14 
    15 int main()
    16 {
    17     int N;
    18     cin >> N;
    19     for (int i = 1; i <= N; i++)
    20     {
    21         long long A, B, C;
    22         cin >> A >> B >> C;
    23         long long num = A + B;
    24         if (A > 0 && B > 0 && num < 0)
    25             printf("Case #%d: true
    ", i);
    26         else if (A < 0 && B < 0 && num >= 0)
    27             printf("Case #%d: false
    ", i);
    28         else if(num > C)
    29             printf("Case #%d: true
    ", i);
    30         else
    31             printf("Case #%d: false
    ", i);
    32     }
    33 }
    View Code
  • 相关阅读:
    团队项目冲刺第6天
    冲刺阶段第五天
    冲刺阶段前四天总结
    "博客园"用户体验分析
    测试计划
    scrum敏捷开发
    团队开发_软件项目风险管理
    sprint计划会议
    svn 之 svn的两种开发模式
    redis 之 搭建真实集群
  • 原文地址:https://www.cnblogs.com/57one/p/12067988.html
Copyright © 2020-2023  润新知