Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
148854 朱悦晨 书架问题1 C++ 运行超时 93 1000 MS 340 KB 630 2024-05-25 15:03:43

Tests(30/32):


#include<bits/stdc++.h> using namespace std; int n,sw,l[10001],w[10001],f[10001],MAX=100000000; int Opt(int x,int y) //返回书在区间(x,y)的最大高度 { int width=0,h=0; for(int i=x; i<=y; i++) { width+=w[i]; h=max(l[i],h) ; } return width>sw ? MAX : h; //不能超出宽度限定 } int main(){ scanf("%d%d",&n,&sw); for(int i=1; i<=n; i++) scanf("%d%d",&w[i],&l[i]); for(int i=1; i<=n; i++) //动态规划 { f[i]=MAX; for(int j=0; j<i; j++) f[i]=min(f[i],f[j]+Opt(j+1,i)); } printf("%d\n",f[n]); return 0; }


测评信息: