倒数第二个循环
```cpp
for (int i=1;i<=m;i++)
if(f[i]>k){
ti=r-i;
break;
}
```
m改成r
```cpp
>
```
改成 >=
by Cang_shu @ 2022-07-19 19:14:11
```cpp
#include<bits/stdc++.h>
using namespace std;
int a[1145],c[1145],w[1145],f[1145];
int main(){
int n,m,k,r;
cin>>n>>m>>k>>r;
for (int i=1;i<=n;i++)
cin>>a[i];
for (int i=1;i<=m;i++)
cin>>c[i];
for (int i=1;i<=m;i++)
cin>>w[i];
for (int i=1;i<=n;i++){
for (int j=r;j>=c[i];j--){
f[j]=max(f[j],f[j-c[i]]+w[i]);
}
}
sort(a+1,a+n+1);
int ti;
for (int i=1;i<=r;i++)
if(f[i]>=k){
ti=r-i;
break;
}
int ans=0;
for (int i=1;i<=n;i++){
if(ti>=a[i]){
ti-=a[i];
ans++;
if(ti<=0) break;
}
}
cout<<ans<<endl;
return 0;
}
```
by Cang_shu @ 2022-07-19 19:20:44
这个行
by Cang_shu @ 2022-07-19 19:21:02