5.放苹果把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。时间限制:1000内存限制:65536输入第一行是测试数据的数目t(0 <= t <= 20)。以下每行均包含二个整数M和N,以空格分开。1<=M,N<=10。输出对输入的每组数据M和N,用一行输出相应的K。样例输入```17 3```样例输出```8```
【喵呜刷题小喵解析】本题是一个经典的组合问题,即“有多少种方式将M个相同的苹果放入N个相同的盘子中,允许有的盘子为空”。这种问题可以用组合数或者递归来解决。我们可以考虑从M个苹果中选择i个苹果放入第1个盘子,然后选择j个苹果放入第2个盘子,以此类推。这样,剩下的M-i-j个苹果就不能放入前i+j个盘子了,只能放入后面的N-(i+j)个盘子中。因此,问题就转化为将M-i-j个苹果放入N-(i+j)个盘子中的问题。具体地,我们可以使用两层循环来枚举i和j的值,然后计算满足条件的分法数目。具体地,当j>=i时,表示可以将j个苹果放入第2个盘子,而将i个苹果放入第1个盘子。因此,我们可以将K加1。最后,对于每一组输入的M和N,我们都可以计算出相应的K值,并输出即可。注意,由于题目中要求5,1,1和1,5,1是同一种分法,因此在计算K值时需要特别处理。具体地,我们可以将M和N都除以它们的最大公约数,然后再进行计算。但是,由于题目中给出了M和N的范围较小,因此我们可以直接暴力枚举所有的分法,而不需要使用最大公约数。