BNUOJ 52297 Coins 2016 ACM-ICPC四川省赛E题
题目链接:https://www.bnuoj.com/v3/problem_show.php?pid=52297
大意:
给你 a 个 1 元硬币,b 个 2 元硬币,c 个 3 元硬币,求可以构成多少个不同的面额。
1000 ms 数据用 LL
打表题 需要找规律..很多种情况
所以也 WA 了很多次。
下次遇到类似题长个心眼
#include <bits/stdc++.h>
using namespace std;
#define ll long long
int main(int argc, const char * argv[]) {
ll a,b,c;
while(cin>>a>>b>>c)
if(a>=2){
cout<<a*1+b*2+c*3<<endl;
}else if(a==1){
if(b>=1)
cout<<a+b*2+c*3<<endl;
else
cout<<2*c+1<<endl;
}else {
if(b>=2){
if(c==0)
cout<<b<<endl;
else
cout<<b*2+3*c-2<<endl;
}else if(b==1){
cout<<2*c+b<<endl;
}else cout<<c<<endl;
}
return 0;
}