box
Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 8574 Accepted Submission(s): 1830
Problem Description
One day, winnie received a box and a letter. In the letter, there are three integers and five operations(+,-,*,/,%). If one of the three integers can be calculated by the other two integers using any operations only once.. He can open that mysterious box. Or that box will never be open.
Input
The input contains several test cases.Each test case consists of three non-negative integers.
Output
If winnie can open that box.print "oh,lucky!".else print "what a pity!"
Sample Input
1 2 3
Sample Output
oh,lucky!
Author
kiki
Source
题意很简单,就是有细节问题会注意不到
a.b.c均为int型所以相加或相乘可能超int 要用long long
另外要注意 a%b时要先判定b!=0 不然提交就会出现RE的问题
判定了+就不用判定-,判定了*就不用判定/(题上/是除而不是取整)
#include<stdio.h>
int main()
{
long long a,b,c;
while(~scanf("%lld%lld%lld",&a,&b,&c))
{
int flag=0;
if(a+b==c||a+c==b||b+c==a)
{
flag=1;
}
if(a*b==c||a*c==b||b*c==a)
{
flag=1;
}
if((b!=0&&a%b==c)||(c!=0&&a%c==b)||(c!=0&&b%c==a)||(a!=0&&b%a==c)||(b!=0&&c%b==a)||(a!=0&&c%a==b))
{
flag=1;
}
if(flag)
{
printf("oh,lucky!\n");
}
else
{
printf("what a pity!\n");
}
}
return 0;
}