数据结构之神ccz又在出毒瘤数据结构了   
       神出了这样一个题:   
       给你三个数,在这三个数中间任意加*或者是+,然后可以随便打括号,只要这个表达式合法   
       比如说1 2 3可以得到:   
   - 1+2*3=7
 - 1*(2+3)=5
 - 1*2*3=6
 - (1+2)*3=9
 
    不能改变这三个数的原顺序   
       最大化表达式的值   
 输入描述:
输入三行,每行一个数 分别表示a,b,c
输出描述:
输出一行一个数表示答案
备注:
1 <= a , b , c <= 10
六种情况??四种情况??
都行吧
#include <stdio.h>
#include <cstring>
#include <stdlib.h>
#include <string.h>
#include <algorithm>
#include <iostream>
using namespace std;
int main()
{
	int a , b , c  , x[5];
	while(~scanf("%d %d %d" , &a , &b , &c))
	{
		x[0] = a+b+c;
		x[1] = a*b*c;
		x[2] = (a+b) *c;
		x[3] = a * (b+c);
		int t = max(x[0] , max(x[1] ,max(x[2] , x[3])));
	//	sort(x , x+3);
		
		printf("%d\n" , t);
	}
	return 0;
 }  
京公网安备 11010502036488号