2017百度之星复赛:1003. Pokémon GO(递推)
来源:互联网 发布:电脑美化软件知乎 编辑:程序博客网 时间:2024/06/14 19:21
Pokémon GO
Accepts: 738
Submissions: 1725
Time Limit: 3000/1500 MS (Java/Others)
Memory Limit: 32768/32768 K (Java/Others)
设A[n]为2*n的矩形以某个固定的角作为起点的方案数
那么有:A[n] = 4*A[n-2]+2*A[n-1]+2^n;证明如下图
但是起点不一定是角落,考虑如果起点在中间,终点在起点左侧,那么很显然起点右侧遍历完之后一定会回到起点的正下方,这样右边部分的情况数就是2^n,所以有公式
别忘记要乘以4!
#include<stdio.h>#define LL long long#define mod 1000000007LL a[10005] = {0,1,6}, er[10005] = {0,1};int main(void){LL T, i, n, ans;for(i=2;i<=10000;i++)er[i] = er[i-1]*2%mod;for(i=3;i<=10000;i++)a[i] = (er[i]+2*a[i-1]+4*a[i-2])%mod;scanf("%lld", &T);while(T--){scanf("%lld", &n);if(n==1){printf("2\n");continue;}ans = a[n];for(i=2;i<=n-1;i++)ans = (ans+4*a[n-i]*er[i-1])%mod;printf("%lld\n", ans*4%mod);}return 0;}
阅读全文
2 0
- 2017百度之星复赛:1003. Pokémon GO(递推)
- HDU 6146 && 2017 百度之星复赛 1003 Pokémon GO(递推)
- 2017百度之星复赛 1003 Pokémon GO 递推
- 【HDU6146】【2017百度之星复赛-C】Pokémon GO(动态规划)(dp)
- 百度之星复赛--Pokémon GO----dp
- [递推] HDU6146 Pokémon GO
- Hdu6146 Pokémon GO(2017百度之星程序设计大赛
- HDU6147 Pokémon GO II (2017百度之星程序设计大赛
- HDU6146 Pokémon GO (2017百度之星程序设计大赛
- 【递推+乱搞】HDU6146 Pokémon GO
- Pokémon GO
- Unbundling Pokémon Go
- HDU6146-Pokémon GO
- HDU6146 Pokémon GO
- HDU-2017"百度之星"程序设计大赛-复赛-1003-Pokémon GO
- HDU 6146 Pokémon GO (dp)
- HDU 6146 Pokémon GO(dp)
- hdu[6147] Pokémon GO II
- Arrays.asList()方法的两个坑
- Zephyr OS 内核篇:系统启动
- 包
- Android 关于inflate
- C关于字符串赋值的一些方法比较
- 2017百度之星复赛:1003. Pokémon GO(递推)
- 前端页面无刷新上传图片至后台
- Java 动态代理的两种方式实例
- Spring Cloud快速上手
- eclipse的xml文件提示templates的模板
- 使用JavaBean实现对MySQL数据库的增删改操作
- linux下消息中间件ActiveMQ的入门笔记一
- 四种访问权限的修饰符
- Zephyr OS 内核篇:系统启动