• XidianOJ 1040 简单的游戏


    题目描述

    一年一度的ACM校赛又到了,在这个阳光明媚的日子里,两个小朋友在玩一个无聊而又简单的游戏:猜数字。

    小朋友Cyin从1~100000里面挑选了三个数字A,B,C(他们可能相同),然后把A+B,A+C,B+C这三个值告诉小朋友Boat,你只需要写一个程序帮助小朋友Boat去计算A,B,C分别是多少,如果无解,则输出“Impossible”。

    输入

    有多组输入数据。

    输入数据的第一行为一个数字T,代表有T组输入数据 (0<T≤20)。

    接下来为T组数据,每组数据占一行,为三个整数,分别表示A+B,A+C,B+C的值。

    输出

    一共T行。

    对于每组数据,在一行上输出三个整数或者“Impossible”,表示计算出的A、B、C或者无解。(记得要在每组答案后面换行哦!以后的每道题也一样)

    --正文

    签到题

    #include <iostream>
    #include <cstdio>
    #include <algorithm>
    #include <cstring>
    using namespace std;
    
    bool impos(int i){
        if (i < 1 || i > 100000)
            return true;
        return false; 
    }
    bool imposSum(int sum){
        if (sum < 2 || sum > 200000){
            return true;
        }
        return false;
    } 
    
    int main(){
        int time,T;
        scanf("%d",&T);
        for (time=1;time<=T;time++){
            int sum1,sum2,sum3;
            int a,b,c;
            scanf("%d %d %d",&sum1,&sum2,&sum3);
            if (imposSum(sum1) || imposSum(sum2) || imposSum(sum3)){
                printf("Impossible
    ");
                continue;    
            }
            
            b = (sum1 - sum2 + sum3) / 2;
            if ((sum1 - sum2 + sum3) % 2 != 0){
                printf("Impossible
    ");
                continue;
            } 
            c = sum3 - b;
            a = sum1 - b;
            if ( impos(a) || impos(b) || impos(c)) {
                printf("Impossible
    ");
                continue;
            }
            if ((a + c) != sum2) {
                printf("Impossible
    ");
                continue;
            }   
            else {
                printf("%d %d %d
    ",a,b,c);
                continue;
            }
        }
        return 0;
    }
     
  • 相关阅读:
    JavaOOP对象和封装
    使用socket实现文件复制
    多线程模拟银行取款
    初入多线程示例展示--Runner
    初步学习多线程3
    初步学习多线程2
    初步线程学习1
    守护线程_setDaemon()
    多线程_yield()和sleep()方法比较
    java_多线程_优先级
  • 原文地址:https://www.cnblogs.com/ToTOrz/p/6077144.html
Copyright © 2020-2023  润新知