poj1664
来源:互联网 发布:x98 3g桌面软件 编辑:程序博客网 时间:2024/04/30 08:34
题目链接:点击打开链接
题目意思:
把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?
思路:
当n>=m时,必定有n-m个盘子空着,f(m, n)等价于f(m, m)
当n<m时,有两种情况:
(1)至少有1个盘子空着, f(m, n)等价于f(m, n-1)
(2)至少每个盘子都有一个苹果,f(m, n)等价于f(fm-n, n)
疑问:重复的问题是如何解决的?
启示:递归的转换
代码:
#include <iostream>#include <cstdio>using namespace std;int dfs(int m, int n){if(m==0 || n==1)return 1;if(n>m)return dfs(m, m);elsereturn dfs(m-n, n) + dfs(m, n-1);}int main(){int t, m, n;scanf("%d", &t);while(t--){scanf("%d%d", &m, &n);printf("%d\n", dfs(m, n));}return 0;}
0 0
- poj1664
- POJ1664
- poj1664
- poj1664
- POJ1664
- poj1664
- poj1664
- 1poj1664
- poj1664 DFS
- Poj1664!【递归】
- poj1664【DFS】
- poj1664-1
- package poj1664;
- poj1664解题报告
- 整数划分问题 POJ1664
- POJ1664 放苹果
- poj1664放苹果
- POJ1664 放苹果 递归
- Andorid事件处理 基于回调的事件处理
- 我终于有了一个GitHub了
- GCD线程与runloop中添加timer的见解
- python 那些待深入理解的东西
- 【网络流】bzoj3901(?)Magic
- poj1664
- ionic2 中隐藏子页面tabs选项卡的三种方法
- ubuntu 15或者16版本 安装ibus中文输入法
- 嵌入式面试题——有意思的C语言题
- codeforces 580 E. Kefa and Watch(hash+线段树)
- iOSBase64POST上传图片和FormData方式比较
- 浅谈接口自动化如何应用与工作中与开发模式实践
- ubuntu提交代码到远程仓库
- bootstrap div 居中