这道题是典型的二分问题,由于没有看到其中的一个已知条件(分给每个人的蛋糕必须是整个大块的,不能东拼西凑出来的)
题目意思:我过生日请了f 个朋友来参加我的生日party,m个蛋糕,我要把它平均分给每个人(包括我),并且每个人只能从一块蛋糕得到自己的那一份,并且分得的蛋糕大小要一样,形状可以不一样,每块蛋糕都是圆柱,高度一样。
此题是一个二分题,下限是用最大的分,上限是sum/f+1。中间值是m,当cnt+=cnt+=(int)floor(p[i]/m);cnt<f+1,则r=m;否则l=m;
一道关于平均分配蛋糕的ACM题目,要求在限制条件下使用二分法找到解决方案。题目描述中提到,在生日派对上,需要将m个高度相同的圆柱形蛋糕平均分给f+1个人,每个人必须一次性获得完整的一块蛋糕。通过二分搜索,确定下限为最大切割数,上限为蛋糕总数除以人数加1,中间值为m。如果当前切割方式不足以分配给所有人,则更新下限为m,否则更新上限为m。
这道题是典型的二分问题,由于没有看到其中的一个已知条件(分给每个人的蛋糕必须是整个大块的,不能东拼西凑出来的)
题目意思:我过生日请了f 个朋友来参加我的生日party,m个蛋糕,我要把它平均分给每个人(包括我),并且每个人只能从一块蛋糕得到自己的那一份,并且分得的蛋糕大小要一样,形状可以不一样,每块蛋糕都是圆柱,高度一样。
此题是一个二分题,下限是用最大的分,上限是sum/f+1。中间值是m,当cnt+=cnt+=(int)floor(p[i]/m);cnt<f+1,则r=m;否则l=m;

被折叠的 条评论
为什么被折叠?