www.acmicpc.net/problem/17219

 

17219번: 비밀번호 찾기

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

www.acmicpc.net

#include <iostream>
#include <map>
#include <string>
using namespace std;

int main(void)
{
  cin.tie(0);
  cout.tie(0);
  ios_base::sync_with_stdio(0);
  map<string, string> ma;
  int n, m;
  cin >> n >> m;
  // 각 사이트를 키로, 비밀번호를 값으로 해서 맵에 저장
  for(int i = 0 ; i < n ; i++)
  {
    string site, pw;
    cin >> site >> pw;
    ma.insert(pair<string, string>(site, pw));
  }
  // 사이트를 입력받아 비밀번호를 출력
  for(int i = 0 ; i < m ; i++)
  {
    string ans;
    cin >> ans;
    cout << ma[ans] << '\n';
  }
}

 

[Approach]

1. 맵 사용하여 키값 쌍으로 찾으면 될 것 같다.

 

[Point]

1. 맵(딕셔너리) 를 알고 있으면 너무 간단하게 풀 수 있다.

'PS > BOJ' 카테고리의 다른 글

[백준] 2579.cpp : 계단 오르기  (0) 2020.06.30
[백준] 1676.cpp : 팩토리얼 0의 개수  (0) 2020.06.29
[백준] 17626.cpp : Four Squares  (0) 2020.06.28
[백준] 1075.cpp : 나누기  (0) 2020.06.17
[백준] 5585.cpp : 거스름돈  (0) 2020.06.16

+ Recent posts