题目连接:https://codeforces.com/contest/1248/problem/C

思路:

注意上下两排的关系,如果说上面那一排有两个方格连续,那么他相邻的两排必定和他相反,如果说当前这一排没有连续的两个方格,那么它相邻的两排必定和它相同,因此,当第一排或者第一列确定好了,他下面的也就确定好了。

因此我们只需要考虑当n==1时的规律就行了,,规律为d[i]=d[i-1]+d[i-2]。从第一列往后延续也是可以的,这样就会有d[x]+d[y]对,但是会多加入两组,就是黑白相间的两种,在以行往后延续的时候统计了一次,以列往后延续又统计了一次

因此,我们要减去多统计的(2),答案为(d[x]+d[y]-2)

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int mod=1e9+;
const int N=1E5+;
ll dp[N];
int main(){
int n,m;
scanf("%d%d",&n,&m);
int x=max(n,m);
dp[]=;
dp[]=;
for(int i=;i<=x;i++) dp[i]=(dp[i-]+dp[i-])%mod;
ll sum=(dp[n]+dp[m]-+mod)%mod;
cout<<sum<<endl;
return ;
}

最新文章

  1. 【从零开始学BPM,Day1】工作流管理平台架构学习
  2. webgl巧妙方式写着色器代码
  3. 一个基于jQuery的移动端条件选择查询插件(原创)
  4. div水平居中
  5. 烂泥:【解决】ubuntu提示ilanni不在sudoers文件中错误
  6. android用shape给linearLayout设置边框,怎样只保留底部或顶部的边框,把其它三个方向的边框去掉呢?
  7. Ubuntu 下安装Kibana和logstash
  8. 理解Node.js的事件轮询
  9. [SQL Server]用 C# 在 LinqPad 建立 Linked Server 跨服务器数据库操作
  10. 如何解决在ie下,Echarts多次使用setOption更改数据时,数据错乱问题
  11. Java 中传统多线程
  12. Elasticsearch-6.7.0系列(二)ES集群安装与验证
  13. 基于IP的docker private registry 私有仓库的搭建
  14. Xib给特定view添加手势
  15. CodeChef KILLKTH Killjee and k-th letter
  16. ExtJS学习笔记2:响应事件、使用AJAX载入数据
  17. 【咸鱼教程】DragonBones帧动画、骨骼json、极速、二进制
  18. java.lang.UnsupportedClassVersionError: com/my/test/TestUser : Unsupported major.minor version 52.0
  19. POJ2182 Lost Cows
  20. RR和RC复合语句加锁

热门文章

  1. [模拟] Codeforces - 1191C - Tokitsukaze and Discard Items
  2. ​知识图谱与机器学习 | KG入门 -- Part1 Data Fabric
  3. 文件输入输出实例&amp;Ptask的编写
  4. [ASP.NET Core MVC] 如何实现运行时动态定义Controller类型?
  5. Mysql 截取字符串总结
  6. Python第三方包之PrettyTable
  7. ANTLR随笔(二)
  8. C语言:static关键字用法
  9. stylus--安装及使用方法
  10. WTM asp.net core应用程序在Ubuntu上和CentOS上部署