Description:
有一些整数组,每三个数成一组。如果三个数经过四则运算(+、-、×、÷)得出结果0,则输出“yes”,否则输出“no”。当三个数为全0时,表示输入结束。Sample Input:
1 2 3 3 8 10 100 210 7 900 1 0 0 0 0
Sample Output:
yes no no yes
source:
#include <iostream>
#define ABS(x) (x>0?x:-x)
using namespace std;
bool equal(int a,int b,int c)
{
return (a+b)==c||(a*b)==c;
}
bool cal(int a,int b,int c)
{
if(!(a&&b&&c))
return true;
if(a==b||a==c||b==c)
return true;
return equal(a,b,c)||equal(a,c,b)||equal(b,c,a);
}
int main(int argc, char* argv[])
{
int a,b,c;
while(cin>>a>>b>>c&&(a||b||c))
{
a=ABS(a);b=ABS(b);c=ABS(c);
if(cal(a,b,c))
cout<<"yes"<<endl;
else
cout<<"no"<<endl;
}
return 0;
}