P9645

· · 题解

题目传送门

题目大意

一种 k 小时钟是一种日常时间表示方法,遵循以下规则:

我们知道现在是 x 点钟,经过 y 小时后将是 z 点钟。求 k 的值是多少。

题目解法

这个题目要求你根据一种时间表示方法,找出每个测试用例中 k 的值。给定的时间表示方法是一个 k,它遵循 3 个规则。题目给出了 x、y 和 z,表示现在是 x 点钟,经过 y 小时后将会是 z 点钟。求 k 的值,或者如果无法确定 k 的值,则输出 -1。

须注意的是,x+y=z 要在最开始判断。

所以代码如下:

#include<bits/stdc++.h>
using namespace std;

int main(){
    int T;cin>>T;
    while(T!=0){
        T--;
        int x,y,z;cin>>x>>y>>z;
        if(x+y==z)cout<<z+1<<endl; 
        else if(x+y-z<0||x+y-z<=x||x+y-z<=z)cout<<-1<<endl; 
        else cout<<x+y-z<<endl;
    }
    return 0;
}