반응형
Notice
Recent Posts
Recent Comments
Link
지구정복
[자료구조] 백준 - 비밀번호 찾기 본문
728x90
반응형
https://www.acmicpc.net/problem/17219
-문제해설
해시맵을 이용하면 간단하게 풀 수 있는 문제이다.
키에 사이트주소, 값에 비밀번호를 삽입하고
비밀번호를 알고 싶은 사이트 주소가 입력되면
StringBuffer에 키인 사이트 주소에 해당되는 비밀번호를 저장해주고
마지막에 StringBuffer를 출력하면 정답이다.
파이썬의 경우 딕셔너리 구조를 이용해서 키, 값을 삽입했다.
-자바
package dataStructure;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.StringTokenizer;
public class BJ17219 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st;
st = new StringTokenizer( br.readLine() );
int n = Integer.parseInt( st.nextToken() );
int m = Integer.parseInt( st.nextToken() );
HashMap<String, String> hs = new HashMap<String, String>();
for( int i=0; i<n; i++ ) {
st = new StringTokenizer( br.readLine() );
hs.put( st.nextToken(), st.nextToken() );
}
StringBuffer sb = new StringBuffer();
String tmp = "";
for( int i=0; i<m; i++ ) {
tmp = br.readLine();
sb.append( hs.get(tmp) ).append( "\n" );
}
System.out.println( sb );
}
}
-파이썬
import sys
l = sys.stdin.readline
n, m = map(int, l().split() )
d = {}
for i in range( n ):
site, pas = l().split()
d[site] = pas
print( "\n".join( d[ i.strip() ] for i in sys.stdin ) )
728x90
반응형
'데이터 엔지니어링 정복 > Algorithm' 카테고리의 다른 글
[정렬] 백준 - 좌표압축 (0) | 2021.08.08 |
---|---|
[DP] 백준 - 피보나치 함수 (0) | 2021.08.05 |
[자료구조] 백준 - 듣보잡 (0) | 2021.08.05 |
[수학] 백준 - 팩토리얼 0의 개수 (0) | 2021.08.04 |
[자료구조] 백준 - 나는야 포켓몬 마스터 이다솜 (0) | 2021.08.04 |
Comments