社区讨论

输出一直为0 求调

B3873[GESP202309 六级] 小杨买饮料参与者 3已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@mhjacfvm
此快照首次捕获于
2025/11/03 23:19
4 个月前
此快照最后确认于
2025/11/03 23:19
4 个月前
查看原帖
这个NO solution 暂时没写 只考虑性能
CPP
#include <bits/stdc++.h>
using namespace std;
const int N=520;
int c[N],l[N];
int memo[N];
int n,L;
const int INF=INT_MAX;
int dfs(int x,int mn){
	if(x==n){
		memo[x]=0;
	}
	if(memo[x]!=-1){
		return memo[x];
	}
	int take=INF,nottake=INF;
	if(l[x]>=L){
		take=c[x]+dfs(x+1);
	}
	nottake=dfs(x+1);
	memo[x]=min(take,nottake);
	return memo[x];
}
int main(){
	cin >> n >> L;
	memset(memo,-1,sizeof memo);
	for(int i=0;i<n;i++){
		cin >> c[i] >> l[i];
	}
	cout << dfs(0);
	return 0;
}

回复

3 条回复,欢迎继续交流。

正在加载回复...