Swift/Swift Codingtest

[Swift] 백준 14425번 문자열 집합

hyunjuntyler 2023. 4. 5. 18:13

문제 링크

 

14425번: 문자열 집합

첫째 줄에 문자열의 개수 N과 M (1 ≤ N ≤ 10,000, 1 ≤ M ≤ 10,000)이 주어진다.  다음 N개의 줄에는 집합 S에 포함되어 있는 문자열들이 주어진다. 다음 M개의 줄에는 검사해야 하는 문자열들이 주어

www.acmicpc.net

문제 풀이


  
import Foundation
let NM = readLine()!.components(separatedBy: " ").map{Int($0)!}
var set : Set<String> = []
var n = 0
for _ in 1...NM[0] {
set.insert(readLine()!)
}
for _ in 1...NM[1] {
if set.contains(readLine()!) {
n += 1
}
}
print(n)

Array는 시간초과로 풀리질 않아서 Set으로 풀었다. Array보다 Set가 좀더 속도가 빠른 듯 하다.