题意:三人组队必须由1名大神带2个菜鸟或者2个大神带1个菜鸟组成,问最多能组几支队伍,给出大神的数量n和菜鸟的数量m
思路:竟然想麻烦了,简单的贪心,因为队伍数量最多不过(大神+菜鸟)总数的三分之一(大神:菜鸟正好为1:2或2:1)而已,结果就是大神、菜鸟和(大神+菜鸟)/3最小的那一个
即 ans = min(a,b,(a+b)/3)
代码:
#include <iostream>
#include <cstdio>
using namespace std;
int _min(int a,int b){return a < b ? a : b;}
int a,b;
void solve()
{
cout << _min(a,_min(b,(a+b)/3)) << endl;
}
int main()
{
#ifdef H_R
freopen("in.txt","r",stdin);
#endif // H_R
cin.tie(false);
ios::sync_with_stdio(false);
while(cin >> a >> b)
{
solve();
}
return 0;
}