그럴듯한 개발 블로그
반응형

https://www.acmicpc.net/problem/7785

 

7785번: 회사에 있는 사람

첫째 줄에 로그에 기록된 출입 기록의 수 n이 주어진다. (2 ≤ n ≤ 106) 다음 n개의 줄에는 출입 기록이 순서대로 주어지며, 각 사람의 이름이 주어지고 "enter"나 "leave"가 주어진다. "enter"인 경우는

www.acmicpc.net

// 회사에 있는 사람

#include <iostream>
#include <vector>
#include <unordered_set>
#include <algorithm>
#include <cstring>
using namespace	std;

int	main()
{
	ios::sync_with_stdio(0),cin.tie(0);

	unordered_set<string>	set;
	string	name, status;
	int	n;

	cin >> n;
	while (n--)
	{
		cin >> name >> status;
		if (status == "enter")
			set.insert(name);
		else
			set.erase(name);
	}
	vector<string>	v(set.begin(), set.end()); // 이렇게 벡터에 전부 넣어줄 수 있다
	sort(v.begin(), v.end(), greater<string>()); // 역순 정렬
	for (int i = 0; i < v.size(); i++)
		cout << v[i] << '\n';
}

엄청 편리하다 해시 최고!

반응형
profile

그럴듯한 개발 블로그

@donghyk2

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!