杭电4828 Grids(卡特兰数+求逆元)
来源:互联网 发布:淘宝卖大米要什么手续 编辑:程序博客网 时间:2024/05/16 00:25
Grids
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Total Submission(s): 423 Accepted Submission(s): 168
Problem Description
度度熊最近很喜欢玩游戏。这一天他在纸上画了一个2行N列的长方形格子。他想把1到2N这些数依次放进去,但是为了使格子看起来优美,他想找到使每行每列都递增的方案。不过画了很久,他发现方案数实在是太多了。度度熊想知道,有多少种放数字的方法能满足上面的条件?
Input
第一行为数据组数T(1<=T<=100000)。
然后T行,每行为一个数N(1<=N<=1000000)表示长方形的大小。
然后T行,每行为一个数N(1<=N<=1000000)表示长方形的大小。
Output
对于每组数据,输出符合题意的方案数。由于数字可能非常大,你只需要把最后的结果对1000000007取模即可。
Sample Input
213
Sample Output
Case #1:1Case #2:5Hint对于第二组样例,共5种方案,具体方案为:
Source
2014年百度之星程序设计大赛 - 初赛(第一轮)
/*逆元的简单运用。。。我去,2015年刚来了。。已经2月份了、。、Time:2015-2-1 0:08*/#include<cstdio>#include<cstring>#include<algorithm>using namespace std;typedef long long LL;const LL mod=1000000007;const int MAX=1000000+10;LL gcd;void ex_gcd(LL a,LL b,LL &x,LL &y){ if(b==0){ x=1;y=0; gcd=a; return; } ex_gcd(b,a%b,y,x); y-=a/b*x;}LL INV(LL a,LL n){ LL x,y; ex_gcd(a,n,x,y); //ax+ny=1 x即为逆元 return (x+n)%n;}LL buf[MAX];void Catalan(int n){ buf[0]=1;buf[1]=1; for(LL i=2;i<=n;i++){ buf[i]=(((buf[i-1]*((i<<2)-2))%mod)*INV(i+1,mod))%mod; }}int main(){ int T,n,nCase=1; scanf("%d",&T); Catalan(MAX-9); while(T--){ scanf("%d",&n); printf("Case #%d:\n",nCase++); printf("%lld\n",buf[n]); }return 0;}
0 0
- 杭电4828 Grids(卡特兰数+求逆元)
- HDU 4828 Grids(卡特兰数)
- HDU 4828 Grids(卡特兰数+乘法逆元)
- Hdu 4828 Grids【卡特兰数】
- hdu 4828 Grids(拓展欧几里得+卡特兰数)
- 2014百度之星初赛第一轮 HDU 4828 - Grids (卡特兰数 逆元)
- 杭电 4165 卡特兰数
- 【杭电oj】2067 - 小兔的棋盘(卡特兰数(注意精度))
- 杭电OJ——1131 Count the Trees(卡特兰数的应用)
- HDU 4828 (卡特兰数)
- 卡特兰数(转)
- Catalan(卡特兰数)
- 卡特兰数(catalan)
- 卡特兰数(转)
- hdu1023(卡特兰数)
- hdu2067(卡特兰数)
- 卡特兰数(模板)
- 卡特兰数(Catalan)
- LeetCode:Find Minimum in Rotated Sorted Array II
- socket 的通信过程
- 云概念下的权限系统
- 【leetcode Java】Excel Sheet Column Number
- 指针小节
- 杭电4828 Grids(卡特兰数+求逆元)
- Linux内核优化
- Android Studio系列教程一--下载和安装
- WeiboSDK替换为最新64位包时,'-[UIView wbsdkCenterX]: unrecognized selector sent to instance 0x7fcfe33b3b90'
- 设计一个iOS应用的本地缓存机制
- XP-SP3 安装之后怎么禁止更新
- 欧美小型美发店装修图理发店装修图小型美发店装修效果图设计风格
- c++ 函数 const 修饰
- UVALive - 3135 - Argus (优先队列!!)