题目大意:
总共有n个盘子,a和b两种蛋糕。要将所有的蛋糕都放在盘子里,但要满足以下两个条件:
1.每个盘子都不能空;
2.一个盘子里只能放同一种蛋糕。
请问在这种条件下,要使蛋糕数最少的盘子里的蛋糕数尽量大,求出这个盘子中的蛋糕数。
题目分析:
答案很简单,却有一定的思考难度。
假设只用i个盘子(i<=n)装a,那么a中最少的一个可以分到a/i个,此时b中最少的可以分到b/(k-i)个,在求出这两个值中的较小值。
我们将每一个i都试过去,就可得出结果
for(int i=1;i<k;i++)
{
ans = max(ans,min(a/i,b/(k-i)));
}