1 条题解
-
0赵青海 (huhe) LV 7 SU @ 2021-11-7 11:15:12
#include <math.h> #include <stdio.h> #include <iostream> #include <string.h> #include <algorithm> using namespace std; int a[200]; int dp[200]; int main() { int n , m; cin >> n >> m; int t; cin >> t; while(t--) { int x,y; cin >> x >> y; a[x] = max(a[x],y); } dp[0] = 0; dp[1] = a[1] ; dp[2] = max(a[2] , a[1]); dp[3] = max(a[1],max(a[2],a[3])); for(int i = 3 ; i <= n+1 ;i++) { dp[i] = min(dp[i-3] + max(a[i],max(a[i-1],a[i-2])) , // 上一个放梯子 dp[i-1] + a[i]); } cout <<dp[n+1]; return 0; }
- 1
信息
- ID
- 1404
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 6
- 标签
- 递交数
- 141
- 已通过
- 47
- 上传者