WA第一个点 求助
  • 板块P1510 精卫填海
  • 楼主16_lln
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/7/4 14:51
  • 上次更新2024/7/4 16:34:03
查看原帖
WA第一个点 求助
1112758
16_lln楼主2024/7/4 14:51
#include <bits/stdc++.h>//精卫 
using namespace std;
int n/*物品总数*/,c/*剩余体力*/,v/*石块体积*/; 
int k[100010]/*体积*/,m[100010]/*体力*/,f[100010];
int ans;
int main(){
	cin>>v>>n>>c;
	for(int i=1;i<=n;i++) cin>>k[i]>>m[i];//输入 
	for(int i=1;i<=n;i++){
		for(int j=c;j>=m[i];j--){
			f[j]=max(f[j],f[j-m[i]]+k[i]);
			if(c-j>ans&&f[j]>=v) ans=c-j;//体力计算 
		}
	}
	if(ans>=0) cout<<ans<<endl;
	else cout<<"Impossible";
	return 0;
}
2024/7/4 14:51
加载中...