观察题目可知,会有一个最大的x(两个菜的最大制作数),大于这个x就不能做任何一盘菜,小于这个x那么一定可以做出来,这样分析就是显而易见的递归。
实现递归的check函数,那么我们就可以把两个菜的总制作数传进去。那么什么时候true什么时候false呢,就是判断每种材料的制作量有没有超过原材料的制作量。那么又要如何判断总量是x盘每个菜的制作数呢,就是A菜从0到xfor循环B由x到0for循环,如果有一次成功就返回true。
下面来自professor的代码(思路也是professor的)
标签:AtCoder,338,Beginner,Contest,制作,true From: https://www.cnblogs.com/sixsix666/p/17995501