1160_放苹果
来源:互联网 发布:js动态设置div高度 编辑:程序博客网 时间:2024/05/20 10:24
// 1160_放苹果.cpp : 定义控制台应用程序的入口点。//题目1160:放苹果//时间限制:1 秒内存限制:32 兆特殊判题:否提交:1163解决:788//题目描述://把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。//输入://第一行是测试数据的数目t(0 <= t <= 20)。以下每行均包含二个整数M和N,以空格分开。1<=M,N<=10。//输出://对输入的每组数据M和N,用一行输出相应的K。//样例输入://1//7 3//样例输出://8//来源://2011年北京大学计算机研究生机试真题#include "stdafx.h"#include "stdio.h"#include "algorithm"#include "iostream"#include "string.h"using namespace std;int func(int m,int n){ if(m<0) return 0; if(!m || n==1) return 1; else return func(m,n-1) + func(m-n,n); }int main(){ int t,m,n; cin>>t; while(t--){ cin>>m>>n; cout<<func(m,n)<<endl; } return 0;}/*基本思路(转):令(m,n)表示m个苹果放到n个篮子里的种数,那么势必会有篮子空余、篮子都放两种情况。1、假如有一个篮子空余,那么空余篮子相当于没用,那么(m,n)的问题就是把m个苹果放到n-1个篮子里的种数(m,n-1)2、假如没有篮子空余,那么每个篮子至少应该有一个苹果,即剩下了m-n个苹果了,问题就变成了,把m-n个苹果放到n个篮子里的问题了(m-n,n)。所以:(m,n)=(m,n-1)+ (m-n,n);*/
0 0
- 1160_放苹果
- 666_放苹果
- 题目1160:放苹果
- JD 1160:放苹果
- 题目1160:放苹果
- 题目1160:放苹果
- 题目1160:放苹果
- poj_1664_放苹果_解题报告
- poj 1664 放苹果_整数拆分
- 放苹果
- 放苹果
- 放苹果
- 放苹果
- 放苹果
- 放苹果
- 放苹果
- 放苹果
- 放苹果
- canvas-渐变色
- Kurento模块开发指南之四:开发示例 Crowd Detector Filter
- 浅析C#深拷贝与浅拷贝
- linux之vifm和ranger操作文件管理器使用总结
- C预处理
- 1160_放苹果
- oracle数据库表空间不足解决办法;
- 常用meta 标签
- 自组织映射神经网络SOM---学习小记
- Web自动化环境搭建(selenium+python)
- python实现网页爬虫
- 410. Split Array Largest Sum
- Lottie简介(翻译)
- XMLParser 详解