[2016-03-22][479][A][Expression]
Posted 红洋
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[2016-03-22][479][A][Expression]相关的知识,希望对你有一定的参考价值。
时间:2016-03-22 20:13:36 星期二
题目编号:[2016-03-22][479][A][Expression]
题目大意:给定三个整数,在3个数字之间加符号(括号或者运算符),输出运算之后最大值
分析:
- $ab - a+b = (a-1)(b-1) - 1,当 a\geq2 且 b \geq 2时 abc > (a+b)c$
- 所以数字都大于2的时候,乘法比加法大
- $\frac{a+b+c}{(a+b)*c} = \frac{1}{c} + \frac{1}{a+b} < 1,显然abc>a+b+c$
- 累乘比累加大
- $令a > c 则(a+1)c = ac+a < ac + c = a(1+c),所以小的数+1$
- 小的数字+1大
- $ab - a+b = (a-1)(b-1) - 1,当 a\geq2 且 b \geq 2时 abc > (a+b)c$
遇到的问题:
#include <cstdio>
using namespace std;
typedef long long LL;
int main(){
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a == 1) ++b;
if(b == 1){
if(a > c) ++c;
else ++a;
}
if(c == 1) ++b;
printf("%d\n",a*b*c);
return 0;
}
以上是关于[2016-03-22][479][A][Expression]的主要内容,如果未能解决你的问题,请参考以下文章
Codeforces 479E Riding in a Lift
Codeforces 479E Riding in a Lift:前缀和/差分优化dp