首页 >web前端 >html教程 >Codeforces Round #274 (Div. 2) A Expression_html/css_WEB-ITnose

Codeforces Round #274 (Div. 2) A Expression_html/css_WEB-ITnose

WBOY
WBOY原创
2016-06-24 11:56:061022浏览

题目链接:Expression



Expression

time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

Petya studies in a school and he adores Maths. His class has been studying arithmetic expressions. On the last class the teacher wrote three positive integers a, b, c on the blackboard. The task was to insert signs of operations '+' and '*', and probably brackets between the numbers so that the value of the resulting expression is as large as possible. Let's consider an example: assume that the teacher wrote numbers 1, 2 and 3 on the blackboard. Here are some ways of placing signs and brackets:

  • 1+2*3=7
  • 1*(2+3)=5
  • 1*2*3=6
  • (1+2)*3=9
  • Note that you can insert operation signs only between a and b, and between b and c, that is, you cannot swap integers. For instance, in the given sample you cannot get expression (1+3)*2.

    It's easy to see that the maximum value that you can obtain is 9.

    Your task is: given a, b and c print the maximum value that you can get.

    Input

    The input contains three integers a, b and c, each on a single line (1?≤?a,?b,?c?≤?10).

    Output

    Print the maximum value of the expression that you can obtain.

    Sample test(s)

    input

    123

    output

    input

    2103

    output

    60


    大致题意:a, b, c三个数,在三个数中,插入“+” 和“*”运算符的任意两个组合,求能组成的表达式的值得最大值。(可以用括号)


    解题思路:没啥说的,直接暴力,总共就6种组合。




    AC代码:

    #include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#include <vector>#include <queue>#include <set>#include <map>#include <string>#include <math.h>#include <stdlib.h>#include <time.h>using namespace std;#define INF 0x7fffffffint x[9];int main(){//    #ifdef sxk//        freopen("in.txt","r",stdin);//    #endif    int a,b,c;    while(scanf("%d%d%d",&a,&b,&c)!=EOF)    {        x[0] = a + b + c;        x[1] = a + (b * c);        x[2] = a * (b + c);        x[3] = (a + b) * c;        x[4] = (a * b) + c;        x[5] = a * b * c;        sort(x, x+6);        printf("%d\n",x[5]);    }    return 0;}</time.h></stdlib.h></math.h></string></map></set></queue></vector></algorithm></iostream></string.h></stdio.h>


    声明:
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn