C++/백준 문제풀이

C++ [비밀번호 찾기_백준] / #map #자료구조

공부하는 신입사원 2023. 4. 7. 11:13

Problem


비밀번호찾기_백준

 

17219번: 비밀번호 찾기

첫째 줄에 저장된 사이트 주소의 수 N(1 ≤ N ≤ 100,000)과 비밀번호를 찾으려는 사이트 주소의 수 M(1 ≤ M ≤ 100,000)이 주어진다. 두번째 줄부터 N개의 줄에 걸쳐 각 줄에 사이트 주소와 비밀번

www.acmicpc.net

 

사이트와 비밀번호에 대한 정보가 주어진 후

사이트를 입력하면 그에 맞는 비밀번호가 출력되는 문제

 

Solve


문제를 읽고 바로 map이 떠올랐다.

map에 대한 매우 기본적인 문제이다.

 

1. 사이트와 비밀번호에 대한 정보가 주어지면 사이트 주소는 key , 비밀번호는 value에 저장

2. 비밀번호를 찾고자하는 사이트 주소가 입력되면 m[key]를 통해 해당 주소에 맞는 value 출력

#include <iostream>
#include <unordered_map>

using namespace std;

int main()
{
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);

	unordered_map<string, string> m;

	int N, M;
	cin >> N >> M;

	string address, pass;
	for (int i = 0; i < N; i++)
	{
		cin >> address >> pass;
		m.insert(make_pair(address, pass));
	}
	for (int i = 0; i < M; i++)
	{
		cin >> address;
		cout << m[address]<< '\n';
	}
	return 0;
}