Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
149020 苏唯哲 书架问题2 C++ 解答错误 27 0 MS 328 KB 630 2024-05-25 15:35:22

Tests(3/11):


#include <bits/stdc++.h> using namespace std; struct kun{ int height,wide; }a[205]; bool cmp(kun a,kun b){ return a.height*a.wide<b.height*b.wide; } int n,k,f[205][205]; int main(){ cin>>n>>k; for(int i=1;i<=n;++i) cin>>a[i].height>>a[i].wide; sort(a+1,a+n+1,cmp); for(int i=1;i<=n;i++) for(int j=2;j<=min(i,n-k);++j){ f[i][j]=0x3f3f3f3f; for(int x=j-1;x<i;++x) f[i][j]=min(f[i][j],f[x][j-1]+abs(a[x].wide-a[i].wide)); } int ans=f[n][n-k]; for(int i=n-1; i>=n-k; --i) ans=min(ans,f[i][n-k]); cout<<ans; }


测评信息: