Pokémon GO

 Accepts: 738
 Submissions: 1725
 Time Limit: 3000/1500 MS (Java/Others)
 Memory Limit: 32768/32768 K (Java/Others)

Problem Description

众所周知,度度熊最近沉迷于 Pokémon GO。

今天它决定要抓住所有的精灵球!

为了不让度度熊失望,精灵球已经被事先放置在一个2*N的格子上,每一个格子上都有一个精灵球。度度熊可以选择任意一个格子开始游戏,抓捕格子上的精灵球,然后移动到一个相邻的至少有一个公共点的格子上继续抓捕。例如,(2, 2) 的相邻格子有(1, 1), (2, 1) 和 (1, 2) 等等。

现在度度熊希望知道将所有精灵球都抓到并且步数最少的方案数目。两个方案被认为是不同,当且仅当两个方案至少有一步所在的格子是不同的。

Input

第一行为T,表示输入数据组数。

每组数据包含一个数N。

●1≤T≤100

●1≤N≤10000

Output

对每组数据输出方案数目,结果对 1 000 000 007 取模。

Sample Input
Copy

3
1
2
3

Sample Output
2
24
96

设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 1000000007
LL 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;
}

2017百度之星复赛:1003. Pokémon GO(递推)相关推荐

  1. 2016百度之星复赛 1003 拍照 扫描线

    原题见1003 有n条船平行于x轴,已知初始时刻的位置,向平行于x轴正向或反向走.所有船速度大小一致.现在海哥站在x轴上,要给船拍照,角度为朝向+y方向的固定90度,可以在任意时刻.任意位置拍,问何时 ...

  2. 2016百度之星复赛 1003 拍照 优先队列

    2016"百度之星" - 复赛(Astar Round3) Ended  2016-05-29 14:00:00 - 2016-05-29 17:00:00 Current Tim ...

  3. 2017百度之星 复赛

    作为一只菜鸡,这可能是我OI生涯中最后一次打百度之星了,希望明年这个时候能不退役(虽然不大可能) 开始贴题解吧.会持续更新. 1001 Arithmetic of Bomb 煞笔模拟题,1A #inc ...

  4. 2017百度之星资格赛—1003度度熊与邪恶大魔王

    其他题目就不发博客了(有些也没做出来!!),感觉这次百度之星资格赛题目数据有毒,吐槽,其他题目也不好说,感觉这个题目正常点. 这个题目我当时想到的就是动态规划,但是评论中很多人说是贪心,我一直不理解, ...

  5. 2017百度之星 资格赛1003度度熊与邪恶大魔王

    1003度度熊与邪恶大魔王 Accepts: 1503 Submissions: 9026 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 3 ...

  6. 2017百度之星资格赛 1003 度度熊与邪恶大魔王

    本题我们可以类比背包 背包dp[i][j] 表示再有i个物品下j个空间所获得的最大价值 本题dp[i][j] 可以表示干掉i个血量j个防御力下的最小花费 我们看其实我们就是在不同血量之间转移 如果当前 ...

  7. 2017百度之星复赛:1006. Valley Numer(数位DP)

    Valley Numer  Accepts: 548  Submissions: 1125  Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: ...

  8. 2017 百度之星 复赛 Valley Numer(数位dp)

    Valley Numer 数位dp,state标志前面若干位是否存在递增序列. 代码: #include <bits/stdc++.h> using namespace std;typed ...

  9. 2017百度之星资格赛 1003:度度熊与邪恶大魔王(DP)

    度度熊与邪恶大魔王 Time limit:1000 ms Memory limit:65536 kB Problem Description 度度熊为了拯救可爱的公主,于是与邪恶大魔王战斗起来.邪恶大 ...

最新文章

  1. 针对《评人工智能如何走向新阶段》一文,继续发布国内外的跟贴留言第二部557-561条如下
  2. 互联网黄金十年的黄昏——是人工智能的黎明还是裁员的长夜
  3. hello first one
  4. SQL中的重复记录操作
  5. Android开发之高德定位参数设置
  6. 【ArcGIS风暴】ArcGIS中国地表覆盖数据GlobeLand30预处理(批量投影、拼接、掩膜提取)附成品下载
  7. 如何用命令行查看服务器型号,服务器查看内存命令行
  8. Windows 11 高门槛吓退用户,Linux 成香饽饽?
  9. 富士康工业互联:生产口罩优先用于内部防疫 预计对经营业绩影响较小
  10. 【Flink】Flink 1.9 升级 到 flink 1.12.4 报错 shaded netty4 AbstractChannel AnnotatedConnectException
  11. 为SSD加速 实战4KB对齐技巧2/3
  12. 电路逻辑门图形符号汇总
  13. 按键精灵手机助手连mumu模拟器
  14. 技嘉主板bios怎么进入,如何进入技嘉主板的bios
  15. 怎样对系统进行优化?
  16. 在线hash密码破解网站列表
  17. win10 计算机 搜索文件,如何在win10搜索指定文件_教你在win10搜索指定文件的方法...
  18. 建筑竞赛获奖项目解析国外教程
  19. 联想拯救者笔记本电脑Fn键失效,Fn功能相反,开关FnLock
  20. macbookair有没有touchbar_Touch Bar 真的好用吗?苹果全新 MacBook Pro 触控条上手体验...

热门文章

  1. python利器-python利器app下载-python利器手机版 _5577安卓网
  2. python练手经典100例-【Python精华】100个Python练手小程序
  3. python的第三方库是干什么用的-Python最强大的第三方库,你有必要了解一下!
  4. python常用代码总结-python个人总结
  5. Java1.8安装win10_java1.8环境配置+win10系统
  6. springboot项目识别不了pom.xml文件_Spring Boot Web 项目教程,Spring Boot的环境配置
  7. Vue前后端交互实现图书管理功能
  8. vue中使用flexible.js并配合px2rem-loader实现移动端布局
  9. 【深度优先搜索】计蒜客:最大蛋糕(最大连通块)
  10. JAVA编写的使用Socket模拟Http的GET操作