放苹果
来源:互联网 发布:化妆品美工 编辑:程序博客网 时间:2024/05/01 22:40
知识点:递推,递归
思路:①苹果最少的盘子放了一个,这样每个盘子至少一个,n个盘子先放上n个,剩下的m-n个可以随便放 ②苹果最少的盘子没有放苹果,这样剩下的n-1个盘子还是随便放m个
#include <iostream>using namespace std;int f(int m,int n) { if(m<0) return 0; if(m==0||n==1) return 1; return f(m-n,n)+f(m,n-1); // 其实此处的递归实质就是要减少苹果和盘子的规模。从而使题目回归最原始的简单。。。。 } int main(){int M,N;cin >> M >> N;cout << f(M,N) << endl;return 0;}
0 0