传送门:http://codeforces.com/problemset/problem/626/C
题意:给你两个1e6的数n,m。n代表有多少个可以用两块砖的学生,m代表有多少个可以用三块砖的学生。每个学生的砖都不能相同,问你最大的高度的最小值。
思路:二分。
#include<bits/stdc++.h>
using namespace std;
int main ()
{
int n,m; scanf("%d%d",&n,&m);
int l=0,r=1e7;
while(l<=r){
int mid=(l+r)/2;
if(mid/2>=n&&mid/3>=m&&(mid/2+mid/3-mid/6)>=m+n) r=mid-1;
else l=mid+1;
}
printf("%d\n",l);
}