社区讨论

Mayday-Help

P2695骑士的工作参与者 2已保存回复 3

讨论操作

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

当前回复
3 条
当前快照
1 份
快照标识符
@mhj3hrt5
此快照首次捕获于
2025/11/03 20:07
4 个月前
此快照最后确认于
2025/11/03 20:07
4 个月前
查看原帖
666我是佬大,我坠机了请求支援(0分)
CPP
#include <bits/stdc++.h>
using namespace std;
#define int unsigned long long
#define N (int)2e6+10
void solve1() {
	int n,m;
	cin>>n>>m;
	int a[N],b[N],s[N];
	map<int,int> mp;
	for(int i=1;i<=n;i++){
		cin>>a[i];
		mp[a[i]]++;
	}
	int len=0;
	for(auto t:mp){
		b[++len]=t.second;
	}
	sort(b+1,b+len+1);
	for(int i=1;i<=len;i++){
		s[i]=s[i-1]+b[i];
	}
	int ans=2e9;
	for(int i=1;i<=len;i++){
		int j=upper_bound(b+i,b+len+1,b[i]+m)-b-1;
		int sum=s[j]-s[i-1]+(len-j)*(b[i]+m);
		ans=min(ans,n-sum);
	}
	cout<<ans;
}
void LSSOLVE_SB250_JBSB(){
	printf("0");
}
void solve(){
	int n,m;
	cin>>n>>m;
	int a[n],b[m];
	for(int i=0;i<n;i++){
		cin>>a[i];
	}
	sort(a,a+n);
	for(int i=0;i<m;i++){
		cin>>b[i];
	}
	sort(b,b+n);
	int SPEND=0;
	int l=0,r=0;
	//l龍r骑士 
	while(l<n&&r<m){
//		r++;
//		if(a[l]<=b[r]){
//			l++;
//			SPEND+=b[r];
//		}
		if(a[l]>b[r]){
			r++;//打不过 
		}else{
			l++,r++,SPEND+=b[r];
		}
	}
	if(m>=l){
		cout<<SPEND;
	}else{
		cout<<"you died!";
	}
	
	
}
signed main(){
//	freopen("put.in","r",stdin);
//	freopen("put.out","w",stdout);
	solve();
//	LSSOLVE_SB250_JBSB();
}

回复

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

正在加载回复...