社区讨论
谁帮忙救一下
B4452[GESP202512 四级] 优先购买参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mlojncf0
- 此快照首次捕获于
- 2026/02/16 10:17 3 天前
- 此快照最后确认于
- 2026/02/16 23:56 3 天前
CPP
#include<bits/stdc++.h>
using namespace std;
struct node{
string name;
int m,z;
} a[1001];
bool cmp(node a,node b){
if(a.z==b.z){
if(a.m==b.m){
return a.name>b.name;
}else return a.m<b.m;
}else return a.z<b.z;
}
string s[1001];
int main(){
int n,m,xb=0;
cin>>m>>n;
for(int i=0;i<n;i++){
cin>>a[i].name>>a[i].m>>a[i].z;
}
sort(a,a+n,cmp);
for(int i=0;i<n;i++){
if(m>=a[i].m){
s[xb]=a[i].name;
m-=a[i].m;
xb++;
}else continue;
}
sort(s,s+xb);
for(int i=0;i<=xb;i++){
cout<<s[i]<<'\n';
}
return 0;
}
回复
共 2 条回复,欢迎继续交流。
正在加载回复...