牛客网 --- 送分题

题目描述

数据结构之神ccz又在出毒瘤数据结构了

神出了这样一个题:

给你三个数,在这三个数中间任意加*或者是+,然后可以随便打括号,只要这个表达式合法

比如说1 2 3可以得到:

  • 1+2*3=7
  • 1*(2+3)=5
  • 1*2*3=6
  • (1+2)*3=9

不能改变这三个数的原顺序

最大化表达式的值

输入描述:

输入三行,每行一个数

分别表示a,b,c

输出描述:

输出一行一个数表示答案

示例1

输入

1
2
3

输出

9

示例2

输入

2
10
3

输出

60

备注:

1 <= a , b , c <= 10

AC代码:

#include
#include

using namespace std;
int arr[5];

int main()
{
    int a,b,c;
    cin >> a >> b >> c;
    arr[0] = a * b * c;
    arr[1] = a * (b+c);
    arr[2] = a + b * c;
    arr[3] = (a + b) * c;
    arr[4] = a+b+c;
    sort(arr,arr+5);
    cout << arr[4];
    return 0;
 }

 

你可能感兴趣的:(题解,算法,c++)