zoukankan      html  css  js  c++  java
  • nyoj 01串(dp)

    开始做DP。。

    第n位为0时,dp[n] = dp[n-1]

    第n位为1时,dp[n] =dp[n-2]

    得公式dp[n] = dp[n-1] + dp[n-2];

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<cstdlib>
     4 #include<cstring>
     5 #include<string>
     6 #include<queue>
     7 #include<algorithm>
     8 #include<map>
     9 #include<iomanip>
    10 #include<climits>
    11 #include<string.h>
    12 #include<cmath>
    13 #include<stdlib.h>
    14 #include<vector>
    15 #include<stack>
    16 #include<set>
    17 #define INF 1e7
    18 #define MAXN 100010
    19 #define maxn 1000010
    20 #define Mod 1000007
    21 #define N 1010
    22 using namespace std;
    23 typedef long long LL;
    24 
    25 int T, n;
    26 int dp[111];
    27 
    28 void run()
    29 {
    30     cin >> n;
    31     memset(dp, 0, sizeof(dp));
    32     dp[2] = 3, dp[3] = 5;
    33     for (int i = 4; i < 110; ++i)
    34         dp[i] = dp[i - 1] + dp[i - 2];
    35     cout << dp[n] << endl;
    36 }
    37 
    38 int main()
    39 {
    40     cin >> T;
    41     while (T--)
    42         run();
    43     //system("pause");
    44     return 0;
    45 }
  • 相关阅读:
    fork 函数 和vfork 函数的区别
    进程时间
    输出子进程状态
    二维字符串数组字典排序
    括号匹配
    队列实现二叉树层序遍历
    二叉查找树
    分块查找
    JS中的className含义
    Java打印温度转换表
  • 原文地址:https://www.cnblogs.com/usedrosee/p/4356769.html
Copyright © 2011-2022 走看看