1 条题解
-
0
这道题目是非常简单的DP,不明白为什么有人做错。
#include<bits/stdc++.h> using namespace std; int n,dp[201],money[201][201]; int minn(int x){ int mm=1000001; for(int i=x-1;i>=1;i--){ mm=min(mm,dp[i]+money[i][x-i]); } return mm; } int main(){ cin>>n; for(int i=1;i<=n;i++){ for(int j=1;j<=n-i;j++){ cin>>money[i][j]; } } dp[1]=0; for(int i=2;i<=n;i++){ dp[i]=minn(i); } cout<<dp[n]; return 0; }注:此代码仅适用于数据较小的题目(如本题)。
- 1
信息
- ID
- 2821
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 90
- 已通过
- 19
- 上传者