zoukankan      html  css  js  c++  java
  • DP BestCoder Round #50 (div.2) 1003 The mook jong

    题目传送门

     1 /*
     2     DP:这题赤裸裸的dp,dp[i][1/0]表示第i块板放木桩和不放木桩的方案数。状态转移方程:
     3         dp[i][1] = dp[i-3][1] + dp[i-3][0] + 1; dp[i][0] = dp[i-1][1] + dp[i-1][0];
     4         比赛时二维dp写搓了,主要是边界情况的判断出错,比如dp[3][1] = 1,因为第3块放了木桩,其他地方不能再放,dp[3][0]同理
     5         解释一下dp[i][1]的三种情况,可能是前面相隔2个放的方案或者是不放的方案,还有唯独在第i块放的方案(1)
     6         比赛时瞄了一下样例,感觉有规律,就写出了dp[i] = dp[i-3] + dp[i-1] + 1;(dp[1] = 1;  dp[2] = 2;  dp[3] = 3;)其实都一样
     7 */
     8 /************************************************
     9 * Author        :Running_Time
    10 * Created Time  :2015-8-9 8:48:32
    11 * File Name     :C_2.cpp
    12  ************************************************/
    13 
    14 #include <cstdio>
    15 #include <iostream>
    16 #include <algorithm>
    17 #include <cstring>
    18 #include <string>
    19 #include <vector>
    20 #include <map>
    21 #include <set>
    22 #include <queue>
    23 #include <cmath>
    24 #include <ctime>
    25 #include <cstdlib>
    26 #include <list>
    27 
    28 #define lson l, mid, rt << 1
    29 #define rson mid + 1, r, rt << 1 | 1
    30 typedef long long ll;
    31 const int MAXN = 66;
    32 const int INF = 0x3f3f3f3f;
    33 const int MOD = 1e9 + 7;
    34 ll dp[MAXN][2];
    35 
    36 void solve(void)    {
    37     dp[1][1] = 1;   dp[1][0] = 0;
    38     dp[2][1] = 1;   dp[2][0] = 1;
    39     dp[3][1] = 1;   dp[3][0] = 2;
    40     for (int i=4; i<=60; ++i)   {
    41         dp[i][1] = dp[i-3][1] + dp[i-3][0] + 1;
    42         dp[i][0] = dp[i-1][1] + dp[i-1][0];
    43     }
    44 }
    45 
    46 int main(void)    {     //BestCoder Round #50 (div.2) 1003 The mook jong
    47     solve ();
    48     int n;
    49     while (scanf ("%d", &n) == 1)   {
    50         printf ("%I64d
    ", dp[n][0] + dp[n][1]);
    51     }
    52 
    53     return 0;
    54 }
    编译人生,运行世界!
  • 相关阅读:
    未来所有的公司,都将成为互联网公司
    万达数字化管理体系
    架构图都画啥
    历经60年,数据库的王者终于出现了
    从智慧社区产品入手,阐述ToG产品的一些设计要点
    黑科技感爆棚的可视化大屏
    数据库编程——Oracle环境配置
    IO系列测试源码
    IO异步,读写压缩文件,监控文件系统
    StreamReader & StreamWriter
  • 原文地址:https://www.cnblogs.com/Running-Time/p/4714586.html
Copyright © 2011-2022 走看看