描述:
在算24的游戏中,经常是这样的,如果里面有一个数3,立刻去想其余三个数能否得到8,如果可能的话,结果就是3乘以8得到24,搞定!
输入:
输入三个整数。
输出:
要求不改变这三个数的顺序,但是有((a ? b) ? c)和(a ? (b ? c))两种可能(注意:?是+、-、*之一),结果能否得到8。
如果能则输出“Yes”,否则输出“No”。
输入样例:
2 4 1
输出样例:
Yes
#include<iostream>
using namespace std;
int suan(int a,int b,int d);
int main()
{
int a, b, c;
int m, n;
int i, j;
int flag=0;
cin>>a>>b>>c;
for(i=0;i<3;i++)
{
m=suan(a,b,i);
for(j=0;j<3;j++)
{
n=suan(m,c,j);
if(n==8)
{
flag=1;
}
}
}
for(i=0;i<3;i++)
{
m=suan(b,c,i);
for(j=0;j<3;j++)
{
n=suan(a,m,j);
if(n==8)
{
flag=1;
}
}
}
if(flag==1)
{
cout<<"Yes"<<endl;
}
if(flag==0)
{
cout<<"No"<<endl;
}
}
int suan(int a,int b,int d)
{
if(d==0)
{
return(a+b);
}
if(d==1)
{
return(a-b);
}
if(d==2)
{
return(a*b);
}
}