还是动态规划。XDOJ Problem 1144
来源:互联网 发布:怎样在matlab2014编程 编辑:程序博客网 时间:2024/06/05 17:46
Description
嗯,首先是故事预告:小学六年级的进藤光为了赚些零用钱,跑到爷爷家里寻宝,偶然翻出了一个旧棋盘。接触棋盘的一瞬间,附身于棋盘中的平安时代棋士——藤原佐为的灵魂进入了小光的体内。佐为将围棋视为生命,在他的熏陶下,小光也逐渐对围棋产生了兴趣……
个人认为围棋中最为枯燥乏味的莫过于整理棋子,比如现在光所要做的工作。先有n个黑色的棋子,m个一样的盒子,问:光有多少种不同的方法,可以将棋子全部放到盒子中去??
Input
每一行有一个m和n(1<m<=n<1000)
Output
每一行输出一个可能的个数(模10007取余)
Sample Input
2 4
1 5
1 5
Sample Output
3
1
1
Hint
Source
SnowWind
#include <stdio.h>#include <stdlib.h>#define div 10007int ans[1010][1010]={0};/*======================可以分为两种情况:1 全部的盒子里的棋子个数都不为0;相当于先分配给每个盒子一球后,再分配。ans[i][j-i];2 至少有一个盒子里的棋子为0;那前面的i-1个盒子分配j个球。状态方程 ans[i][j]=ans[i-1][j]+ans[i][j-i]=========================*/int main(){ int i,j; int m,n; for(i=1;i<=1000;i++) { ans[1][i]=1; ans[i][0]=1; for(j=1;j<=1000;j++) { if(j<i) { ans[i][j]=ans[j][j]%div; } else { ans[i][j]=(ans[i-1][j]+ans[i][j-i])%div; } } } while(scanf("%d %d",&m,&n)!=EOF) { printf("%d\n",ans[m][n]%div); } return 0;}
- 还是动态规划。XDOJ Problem 1144
- Problem E 动态规划
- 动态规划 Problem A
- 动态规划 Problem C
- 动态规划 problem F
- 动态规划 problem J
- 动态规划 Problem M
- 动态规划 problem P
- 动态规划 problem o
- 动态规划 problem K
- 动态规划 problem N
- 动态规划 problem L
- 动态规划 problem Q
- 动态规划 problem S
- hdoj problem 1233 还是畅通工程(并查集+动态规划)
- bzoj2298 problem a 动态规划
- 动态规划—Problem A
- 动态规划—Problem B
- 云存储——Megaupload
- linux爱好者之基础篇--文件命令详解
- 用matlab,mex, gsl进行Spike Train Analysis Toolkit实装的做法
- 分秒钟做款App:细数国内外在线DIY应用网站
- HDU 1756 判断点在多边形内外
- 还是动态规划。XDOJ Problem 1144
- 谈谈我的首个开源项目WeiboSpider(0)——WeiboSpider的总体架构
- C# using 三种使用方式
- Rsync源码——滚动校验
- 分治与递归
- HDU4134:Sequence Folding
- Rsync源码——md5
- mem_malloc:Unknown symbol kmalloc_caches
- 三个数找出大小为中间的数(Python)