码迷,mamicode.com
首页 > 其他好文 > 详细

4982:踩方格

时间:2017-07-02 21:12:49      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:时间   ret   color   content   cin   不同   无法   current   title   

4982:踩方格

总时间限制: 
1000ms
 
内存限制: 
65536kB
描述

有一个方格矩阵,矩阵边界在无穷远处。我们做如下假设:
a.    每走一步时,只能从当前方格移动一格,走到某个相邻的方格上;
b.    走过的格子立即塌陷无法再走第二次;
c.    只能向北、东、西三个方向走;
请问:如果允许在方格矩阵上走n步,共有多少种不同的方案。2种走法只要有一步不一样,即被认为是不同的方案。

输入
允许在方格上行走的步数n(n <= 20)
输出
计算出的方案数量
样例输入
2
样例输出
7


很好理解的题,递推即可;
 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int up[10000], r[10000], lef[10000], total[100000];
 4 int main()
 5 {
 6     int n;
 7     cin >> n;
 8     up[1] = 1; r[1] = 1; lef[1] = 1; 
 9     for(int i=2;i<=n*n+1;i++)
10     {
11         r[i] = up[i - 1] + r[i - 1];
12         lef[i] = up[i - 1] + lef[i - 1];
13         up[i] = up[i - 1] + lef[i - 1] + r[i - 1];
14         total[i] = r[i] + lef[i] + up[i];
15     }
16     cout << total[n] << endl;
17     return 0;
18 }

 

4982:踩方格

标签:时间   ret   color   content   cin   不同   无法   current   title   

原文地址:http://www.cnblogs.com/InfoEoR/p/7107101.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!