codevs 1257
http://codevs.cn/problem/1257/
#include<iostream>
using namespace std;int a[55][55],b[55];
int dp[55][55][1500];
int ans;
int main()
{
int n,m;
cin>>n>>m;
for (int i=1;i<=n;i++)
b[i]=i+b[i-1];
for (int i=1;i<=n;i++)
for (int j=1;j<=n-i+1;j++)
{
cin>>a[i][j];
a[i][j]+=a[i-1][j+1];
}
for (int i=1;i<=n;i++)
for (int j=0;j<=i;j++)
for (int l=j>0?j-1:0;l<i;l++)
for (int k=j+l;k<=min(b[i],m);k++)//一定要在剛開始就將各項的值精確,不然即使不可行的情況也會算進去。
{
dp[i][j][k]=max(dp[i-1][l][k-j]+a[j][i+1-j],dp[i][j][k]);
if (k==m)
ans=max(ans,dp[i][j][k]);
}
cout<<ans;
}
相關文章
- hdu1257最少攔截系統
- codevs 4189 字典【字典樹】dev
- codevs 1664 清涼冷水dev
- CODEVS 3269 混合揹包dev
- 【基礎dp】HDU 1257 最少攔截系統
- codevs 4163 hzwer與逆序對dev
- codevs 1213 解的個數dev
- codevs 1814 最長鏈dev
- [codevs 1227] 方格取數 2dev
- codevs3002 石子歸併 3devS3
- CODEVS 1997 守衛者的挑戰(三維dp)dev
- 【codevs2485】七夕祭(貪心,環形紙牌均分)dev
- 【NOIP2002】【codevs1098】均分紙牌dev
- 【CodeVS】1245 最小的N個和 - Ⅰ - 原題的幾種解法dev
- codevs 3372 選學霸(hash+並查集+多重揹包)dev並查集
- hihocoder 1257 Snake Carpet 模擬構造題||2015北京現場賽I題
- Codevs1378選課[樹形DP|兩種做法(多叉轉二叉|樹形DP+分組揹包)---(▼皿▼#)----^___^]dev