RT
代码:
#include<bits/stdc++.h>
using namespace std;
struct book
{
int c,k;
}a[105];
bool cmpa(book x,book y)
{
return x.c<y.c;
}
unsigned long long dp[105][105];//我曾在极度愤怒时,干初始化时干了这件事
int main()
{
int n,v;
cin>>n>>v;
for(int i=1;i<=n;i++)
{
cin>>a[i].c>>a[i].k;
}
sort(a+1,a+1+n,cmpa);
memset(dp,200000,sizeof(dp));
dp[1][0]=0;
for(int i=2;i<=n;i++)
{
for(int j=0;j<=min(i-1,v);j++)
{
for(int k=1;k<=min(i-1,j+1);k++)
{
dp[i][j]=min(dp[i][j],dp[i-k][j-k+1]+abs(a[i-k].k-a[i].k));//dp[i][j]是前i本书去掉j本最小的不整齐度
}
}
}
cout<<dp[n][v];
return 0;
}