今天上課,老師教了小易怎麼計算加法和乘法,乘法的優先級大于加法,但是如果一個運算加了括号,那麼它的優先級是最高的。例如:
1
2
3
4
1+23=7
1(2+3)=5
123=6
(1+2)3=9
現在小易希望你幫他計算給定3個數a,b,c,在它們中間添加"+", "", “(”, ")"符号,能夠獲得的最大值。
輸入描述:
一行三個數a,b,c (1 <= a, b, c <= 10)
輸出描述:
能夠獲得的最大值
輸入例子1:
1 2 3
輸出例子1:
9
代碼如下:
#include
using namespace std;
int main()
{
int a,b,c;
cin>>a;
cin>>b;
cin>>c;
while(a<1 || a>10 || b<1 || b>10 || c<1 || c>10)
{
cin>>a;
cin>>b;
cin>>c;
}
int m[6];
for(int w=0;w<6;w++)
{
m[w]=0;
};
m[0]=a+b+c;
m[1]=abc;
m[2]=(a+b)c;
m[3]=a(b+c);
m[4]=ab+c;
m[5]=a+bc;
int kd;
for(int dd=5;dd>=0;dd--)
{
if(m[dd]>=m[dd-1])
{
kd=m[dd];
m[dd]=m[dd-1];
m[dd-1]=kd;
}
}
cout<<m[0]<<endl;
};