51nod 1556 计算(默慈金数)
1556 计算
1.0 秒 524,288.0 KB 80 分 5级题
有一个1n的矩阵 固定第一个数为1 其他填正整数 且相邻数的差不能超过1 求方案数%1e9+7的结果
输入
一个数n 表示1n的矩阵(n<=10^6)
输出
一个数 表示方案数%1e9+7的结果
输入样例
3
输出样例
5
思路:
默慈金数裸题,本题相当于求默慈金三角形的行和。
详见:https://blog.csdn.net/tomjobs/article/details/104406961
#include <cstdio>
#include <cstring>
#include <algorithm>using namespace std;typedef long long ll;const ll mod = 1e9 + 7;
const int maxn = 1e6 + 7;ll F[maxn],M[maxn];ll qpow(ll x,ll n)
{ll res = 1;while(n){if(n & 1)res = (res * x) % mod;x = (x * x) % mod;n >>= 1;}return res;
}int main()
{int n;scanf("%d",&n);F[0] = 1;F[1] = 1;F[2] = 5;M[1] = 1;M[2] = 2;for(int i = 3;i <= n;i++){M[i] = ((2 * i + 1) * M[i - 1] % mod + 3 * (i - 1) * M[i - 2] % mod) % mod * qpow(i + 2,mod - 2) % mod;F[i] = ((F[i - 1] * 3 - M[i - 1]) % mod + mod) % mod;}printf("%lld\n",F[n - 1] % mod);return 0;
}
51nod 1556 计算(默慈金数)相关推荐
- 卡特兰数 默慈金数 默慈金三角形 反射原理
卡特兰数 公式 递推式: f ( n ) = ∑ f ( i ) ∗ f ( n − i − 1 ) f(n) = ∑f(i) * f(n-i-1) f(n)=∑f(i)∗f(n−i−1) 0 ≤ i ...
- 【算法讲11:卡特兰数】默慈金数 | 那罗延数 | 施罗德数
[算法讲11:卡特兰数]默慈金数 | 那罗延数 | 施罗德数 ⌈\lceil⌈卡特兰数⌋\rfloor⌋Catalan Number 引入 思考 ⌈\lceil⌈卡特兰数⌋\rfloor⌋的性质 ⌈\ ...
- 默慈金数 (hdu3723)
默慈金数 hdu3723 默慈金数 1, 2, 4, 9, 21, 51, 127, 323, 835, 2188, 5798, 15511, 41835, 113634, 310572, 85346 ...
- HDU 3723 Delta Wave(默慈金数)
传送门 Delta Wave Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) T ...
- MATLAB寻找拉马努金数(出租车数):T=a3+b3=c3+d3.(在矩阵中搜索,不用无脑循环)
拉马努金,是一个在数字上极具天赋的印度数学家.在和朋友的对话中,朋友谈到一个出租车的车牌号是毫无趣味的1729,他立刻反映到说1729可以表示为两组不同的数,并且每组都是两个数的立方和. 出租车数的定 ...
- python怎么读取txt文件并统计其字数-python计算文件的行数和读取某一行内容的实现方法...
一.计算文件的行数 最简单的办法是把文件读入一个大的列表中,然后统计列表的长度.如果文件的路径是以参数的形式filepath传递的,那么只用一行代码就可以完成我们的需求了: count = len(o ...
- python读取文件某一行-python计算文件的行数和读取某一行内容的实现方法
一.计算文件的行数 最简单的办法是把文件读入一个大的列表中,然后统计列表的长度.如果文件的路径是以参数的形式filepath传递的,那么只用一行代码就可以完成我们的需求了: count = len(o ...
- python读取某一行-python计算文件的行数和读取某一行内容的实现方法
一.计算文件的行数 最简单的办法是把文件读入一个大的列表中,然后统计列表的长度.如果文件的路径是以参数的形式filepath传递的,那么只用一行代码就可以完成我们的需求了: count = len(o ...
- 基于融合计算?蚂蚁金服的在线机器学习是如何做的
金融领域越来越多的活动场景,如双十一.双十二.财富日.新春大促,具有活动持续时间短强度高的特点,解决场景中的计算冷启动问题,优化系统效率和用户体验的需求越来越多.在生产环境的应用中,还需要满足高吞吐和 ...
最新文章
- 理论与哲学就是梳理无限感性经验和知性知识的工具
- 西安工程大学c语言试卷,知到_大学应用写作_单元测试答案知到C语言程序设计(西安工程大学)见面课答案...
- Mybatis批量删除
- Postman 根据nginx日志查账号
- 【DEF CON】数十亿物联网设备受严重随机数生成器缺陷影响
- 工作中windows客户端常见问题
- Python 他来了,他来了!
- 一文详解IMU模型原理和标定选型
- Xilinx MicroBlaze软核驱动DDR4
- html的代码怎麼格式化,怎么格式化html代码? Dreamweaver格式化html代码的技巧
- 10、Kafka 消息订阅系统
- ​Mac下 VSCode快捷键 VSCode基本使用
- ReactiveX简介
- Java基本数据类型(范围 默认值 占用字节 精度
- 备考2019一级消防工程师,这份攻略看一下
- Red Hat Enterprise Linux (RHEL) 9 更新了哪些新特性?
- macOS下鼠标滚轮慢速滚动不起作用的问题解决
- POJ2240-Arbitrage
- 和芯星通UM220-IV模块串口不输出和上电异常问题
- 准备使用vue制作开始一个的单机挂机放置类小游戏