#include<cstdio> #include<cmath> using namespace std; //暴力模拟,括号有5种,符号有64种,一共5*64,所以暴力 #define rep(i,a,b) for(int i = a;i<b;++i) #define EPS 1e-6 char operators[4]= {'+','-','*','/'}; double Tran(double a,int oper,double b) { switch(operators[oper]) { case '+': return a+b; break; case '-': return a-b; break; case '*': return a*b; break; case '/': return a/b; break; } } int Cal(int i,int j,int k,double a,double b,double c,double d) { if(fabs(Tran(Tran(a,i,b),j,Tran(c,k,d))-24.0)<=EPS) { printf("(%.0f%c%.0f)%c(%.0f%c%.0f)\n",a,operators[i],b,operators[j],c,operators[k],d); return 1; } if(fabs(Tran(Tran(Tran(a,i,b),j,c),k,d)-24.0)<=EPS) { printf("((%.0f%c%.0f)%c%.0f)%c%.0f\n",a,operators[i],b,operators[j],c,operators[k],d); return 1; } if(fabs(Tran(Tran(a,i,Tran(b,j,c)),k,d)-24.0)<=EPS) { printf("(%.0f%c(%.0f%c%.0f))%c%.0f\n",a,operators[i],b,operators[j],c,operators[k],d); return 1; } if(fabs(Tran(a,i,Tran(Tran(b,j,c),k,d))-24.0)<=EPS) { printf("%.0f%c((%.0f%c%.0f)%c%.0f)\n",a,operators[i],b,operators[j],c,operators[k],d); return 1; } if(fabs(Tran(a,i,Tran(b,j,Tran(c,k,d)))-24.0)<=EPS) { printf("%.0f%c(%.0f%c(%.0f%c%.0f))\n",a,operators[i],b,operators[j],c,operators[k],d); return 1; } return 0; } int main() { double a,b,c,d; while(~scanf("%lf%lf%lf%lf",&a,&b,&c,&d)) { rep(i,0,4) { rep(j,0,4) { rep(k,0,4) { // printf("%f",EPS); if(Cal(i,j,k,a,b,c,d)) goto success; } } } success: continue; } return 0; }