zoukankan      html  css  js  c++  java
  • POJ

    一、题目

      The Triangle

    二、分析

      动态规划入门题。

      状态转移方程$$DP[i][j] = A[i][j] + max(DP[i-1][j], DP[i][j])$$

    三、AC代码

     1 #include <cstdio>
     2 #include <cstring>
     3 #include <iostream>
     4 #include <algorithm>
     5 #include <vector>
     6 #include <cmath>
     7 
     8 using namespace std;
     9 #define ll long long
    10 #define Min(a,b) ((a)>(b)?(b):(a))
    11 #define Max(a,b) ((a)>(b)?(a):(b))
    12 const int MAXN = 100;
    13 int A[MAXN + 13][MAXN + 13];
    14 int Ans[2][MAXN + 13];
    15 
    16 int main()
    17 {
    18     int N;
    19     while(scanf("%d", &N) != EOF) {
    20         memset(A, 0, sizeof(A));
    21         memset(Ans, 0, sizeof(Ans));
    22         for(int i = 1; i <= N; i++) {
    23             for(int j = 1; j <= i; j++) {
    24                 scanf("%d", &A[i][j]);
    25             }
    26         }
    27         for(int i = 1; i <= N; i++) {
    28             for(int j = 1; j <= i; j++) {
    29                 Ans[i&1][j] = A[i][j] + Max(Ans[(i-1)&1][j-1], Ans[(i-1)&1][j]);
    30             }
    31         }
    32         int ans = 0;
    33         for(int i = 1; i <= N; i++) {
    34             ans = Max(ans, Ans[N&1][i]);
    35         }
    36         printf("%d
    ", ans);
    37     }
    38     return 0;
    39 }
  • 相关阅读:
    2020/4/15
    2020/4/14
    2020/4/13
    2020/4/12
    2020/4/11
    2020/4/9
    PTA录入数据库题目流程
    PTA录题
    2020/4/8
    如何把mysql workbench的数据结构和数据导出到sql表中
  • 原文地址:https://www.cnblogs.com/dybala21/p/11416904.html
Copyright © 2011-2022 走看看