hihoCoder1143:骨牌覆盖问题·一

http://hihocoder.com/problemset/submitted

时间限制:10000ms

单点时限:1000ms

内存限制:256MB

描述

骨牌,一种古老的玩具。今天我们要研究的是骨牌的覆盖问题:
我们有一个2xN的长条形棋盘,然后用1x2的骨牌去覆盖整个棋盘。对于这个棋盘,一共有多少种不同的覆盖方法呢?
举个例子,对于长度为1到3的棋盘,我们有下面几种覆盖方式:

 

提示:骨牌覆盖

提示:如何快速计算结果

输入

第1行:1个整数N。表示棋盘长度。1≤N≤100,000,000

输出

第1行:1个整数,表示覆盖方案数 MOD 19999997

样例输入

62247088

样例输出

17748018

 

最简单的铺地砖问题

#include<stdio.h>
int main()
{
	int sum1,sum2,sum3,i,N;
	sum1=1;sum2=2;
	scanf("%d",&N);
	for(i=3;i<=N;i++)
	{
		sum3=(sum1+sum2)%19999997;
		sum1=sum2;
		sum2=sum3;
	}
	printf("%d\n",sum3);
	return 0;
}

 

posted @ 2018-08-25 16:36  宿星  阅读(95)  评论(0编辑  收藏  举报