문제 링크: https://www.acmicpc.net/problem/14425
백준 집합과 맵 2단계 - 14425번 문자열 집합을 풀어보았다.
풀이: 문자열을 받아 거기에 속해있는지 알아보면 된다.
C++의 경우, unordered set을 이용했다.
파이썬의 경우, 시간을 줄이기 위해 list보다 set이나 dictionary를 사용해야 한다.
C++
#include <iostream>
#include <unordered_set>
using namespace std;
int main()
{
int n,m,a;
int cnt=0;
cin>>n>>m;
string s;
unordered_set<string>us;
for(int i=0;i<n;i++)
{
cin>>s;
us.insert(s);
}
for(int i=0;i<m;i++)
{
cin>>s;
if(us.find(s)!=us.end()) cnt++;
}
cout<<cnt;
}
Python
n,m=map(int,input().split())
sn={input() for i in range(n)} # set
cnt=0
for i in range(m):
if input() in sn: cnt+=1
print(cnt)
Java
'코테용 문제풀이 > 백준' 카테고리의 다른 글
숫자 카드 2 풀이 (0) | 2023.01.06 |
---|---|
나는야 포켓몬 마스터 이다솜 풀이 (0) | 2023.01.06 |
숫자 카드 풀이 (0) | 2023.01.06 |
영화감독 숌 풀이 (0) | 2023.01.06 |
체스판 다시 칠하기 풀이 (0) | 2023.01.06 |