#include<bits/stdc++.h>
using namespace std;
int F(int a,int k,int b){
if(k==1)return a+b;
if(k==2){
return max(a,b)-min(a,b);
}
if(k==3)return a*b;
return (b==0||a<b||a%b!=0)?-999999:a/b;
}
char to_op(int k){
switch(k){
case 1:return '+';
case 2:return '-';
case 3:return '*';
case 4:return '/';
}
}
int main(){
int n,m,i,j,k,i1,i2,i3,i4;
int a[5];
cin>>a[1]>>a[2]>>a[3]>>a[4];
sort(a+1,a+5);
for(i1=1;i1<=4;i1++)
for(i2=1;i2<=4;i2++)
for(i3=1;i3<=4;i3++)
for(i4=1;i4<=4;i4++){
int A,B,C,D;
if( i1!=i2 && i1!=i3 && i1!=i4 && i2!=i3 && i2!=i4 && i3!=i4){
A=a[i1],B=a[i2],C=a[i3],D=a[i4];
for(i=1;i<=4;i++)
for(j=1;j<=4;j++)
for(k=1;k<=4;k++){
if(F(F(F(A,i,B),j,C),k,D)==24){//(((a?b)?c)?d)
printf("(((%d%c%d)%c%d)%c%d)\n",A,to_op(i),B,to_op(j),C,to_op(k),D);
//cout<<"yes";
return 0;
}else{
if(F(F(A,i,B),k,F(C,j,D))==24){//(a?b)?(c?d)
printf("(%d%c%d)%c(%d%c%d)\n",A,to_op(i),B,to_op(k),C,to_op(j),D);
//cout<<"yes";
return 0;
}
}
}
}
}
cout<<"no";
return 0;
}
算24的代码
最新推荐文章于 2024-02-05 20:23:18 发布