lizhaoqi @ 2023-12-09 09:41:19
#include<bits/stdc++.h>
using namespace std;
long long n,V;
long long t[2005],c[2005],dp[2005];
long long cnt=pow(10,12)*2;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>t[i]>>c[i];
t[i]++;
V=max(V,t[i]);
}
V+=n;
memset(dp,0x3f3f3f3f,sizeof(dp));
dp[0]=0;
for(int i=1;i<=n;i++){
for(int j=V;j>=t[i];j--){
dp[j]=min(dp[j],dp[j-t[i]]+c[i]);
}
}
for(int i=n;i<=V;i++){
cnt=min(cnt,dp[i]);
}
cout<<cnt;
return 0;
}
本人代码提交后UKE,但找不出问题,请给位大佬帮忙看一下,谢谢!
by YDMaYi @ 2023-12-09 09:42:27
不是AC或WA都是UKE吧
by lizhaoqi @ 2023-12-09 11:05:13
@hard_fang 您能帮我看一下吗
by 幸存者 @ 2023-12-09 11:06:58
@lizhaoqi 数组开到 4010 就过了,因为 V+n 可能超过 2000
by lizhaoqi @ 2023-12-09 11:22:27
@幸存者 还是UKE.......
by NumberTrart @ 2023-12-13 21:28:41
memset(dp,0x3f3f3f3f,sizeof(dp));
应改为
memset(dp,0x3f ,sizeof(dp));
by lizhaoqi @ 2023-12-13 22:11:51
@NumberTrart UKE++...
by NumberTrart @ 2023-12-14 21:31:19
李兆淇,我发现了一个问题,如果你用的是自己的CodeForce账户,它可能会提示要你更改密码,我就收到了,还一直UKE,你可以试试解除绑定
如果实在不行,试试运行下面的程序
int* UKE;
int main()
{
UKE=new int;
while(*UKE)(*UKE)--;
delete UKE;
return 0;
}
by lizhaoqi @ 2023-12-16 17:29:17
AC了,感谢为我提供建议的各位!