本文主要是介绍Codeforces 479A Expression(水题),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Codeforces 479A Expression
题目大意:给定三个数,然后添加任意的加号或者减号使得算式的值最大。
解题思路:暴力枚举一下即可。
#include <cstdio>
#include <cstring>
#include <algorithm>using namespace std;
int a[3];int solve (int s) {int ret = 0;for (int i = 0; i < 2; i++) {int tmp = 0, d = 1 - i;if (s&(1<<i))tmp = a[i] * a[i+1];elsetmp = a[i] + a[i+1];if (s&(1<<d))tmp = tmp * a[(i+2)%3];elsetmp = tmp + a[(i+2)%3];ret = max(ret, tmp);}return ret;
}int main () {for (int i = 0; i < 3; i++)scanf("%d", &a[i]);int ans = 0;for (int i = 0; i < 4; i++)ans = max(ans, solve(i));printf("%d\n", ans);return 0;
}
这篇关于Codeforces 479A Expression(水题)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!