P5019 [NOIP2018 提高组] 铺设道路
我的代码(非讨论区题解):
#include <bits/stdc++.h>
using namespace std;
int dp[100007], a[100007], n;
int main(int argc, char const *argv[])
{
// freopen(".in", "r", stdin);
// freopen(".out", "w", stdout);
cin >> n;
for (int i = 1; i <= n; i++)
cin >> a[i];
dp[1] = a[1];
for (int i = 1; i <= n; i++)
if (a[i] <= a[i - 1])
dp[i] = dp[i - 1];
else
dp[i] = dp[i - 1] + a[i] - a[i - 1];
cout << dp[n];
putchar('\n'), system("pause");
return 0;
}
码风极丑,dp数组不是动态规划,只是在strong,我已经承认我是stronger,请不要辱骂我,只要回答我的问题(这个算不算正解)就行。