L2-019 Atención silenciosa (STL)

enlace de tema

https://pintia.cn/problem-sets/994805046380707840/problems/994805059731177472

ideas

Para el nombre de la lista de vigilancia, usamos uno map<string,bool>para marcar si aparece, y luego se pair<string,name>pueden almacenar los siguientes usuarios e información similar, y finalmente recorrer los usuarios favoritos para averiguar los usuarios que no siguen al usuario y el número de Me gusta es mayor que el promedio. Finalmente, ordene la salida, si no, la salidaBing Mei You

código

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define mod 1000000007
#define endl "\n"
#define PII pair<int,int>
#define INF 0x3f3f3f3f

int n,m;

map<string,bool> vis;

int main()
{
    
    
	ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
	cin>>n;
	string name;
	for(int i = 1;i <= n; ++i) {
    
    
		cin>>name;
		vis[name] = true;
	}
	cin>>n;
	int star,sum = 0;
	vector<pair<string,int>> Vec;
	for(int i = 1;i <= n; ++i) {
    
    
		cin>>name>>star;
		Vec.push_back({
    
    name,star});
		sum += star;
	}
	vector<string> ans;
	for(int i = 0;i < n; ++i) {
    
    
		if(Vec[i].second * n > sum && vis[Vec[i].first] == false) 
			ans.push_back(Vec[i].first);
	}
	if(ans.size() == 0) cout<<"Bing Mei You"<<endl;
	else {
    
    
		sort(ans.begin(),ans.end());
		for(auto it: ans)
			cout<<it<<endl;
	}
	
	return 0;
}

Supongo que te gusta

Origin blog.csdn.net/m0_46201544/article/details/123976307
Recomendado
Clasificación