HDU 5642 多重集排列数 递推
2016-03-12 22:54
232 查看
这个题的意识是给你一个长度为n的序列, 序列只包含小写字母, 问你每个字母最多重复出现三次的方案数是多少?我们可以使用f
表示长度为n的方案数, 那么f
= 25*(fn-1 + fn-2 + fn-3) , 代码如下:
表示长度为n的方案数, 那么f
= 25*(fn-1 + fn-2 + fn-3) , 代码如下:
#include <cstdio> #include <cstring> #include <algorithm> using namespace std; typedef long long LL; LL mod = 1000000007; LL f[2000+10]; int main() { f[1] = 26; f[2] = 676; f[3] = 17576; f[4] = 456950; for(int i=5; i<=2001; i++) f[i] = 25*(f[i-1]+f[i-2]+f[i-3])%mod; int T; scanf("%d", &T); while(T--) { int n; scanf("%d", &n); printf("%I64d\n", f ); } return 0; }
相关文章推荐
- ImageView通过matrix实现手势缩放,放大,缩小 ,移动
- 菱形继承及内部实现
- 基因数据处理9之BWA小数据集测试(成功)
- Python 3 之 运算符重载详解
- LinkIt Assist 2502开发笔记3: 运行样例程序
- 用递归枚举实现八皇后问题
- 蓝桥杯 打印十字图
- 支持向量机理论及工具LibSVM
- Java NIO: Non-blocking Server
- 前端学习总结(十一)Cordova(Phonegap)常用命令与基础
- Java基础练习
- 细说HTML<head>内标签之<meta>
- jquery插件-表单验证插件-提示信息中文化与定制提示信息
- hdu-5641 King's Phone (水题)
- mysql数据类型
- Hadoop伪分布式搭建过程详解
- BestCoder Round #75 King's Cake 模拟&&优化 || gcd
- 客户端检测技术
- 软件过程与项目管理(第三次作业)
- 用UIScrollView,UIPageControl来实现滚动视图。