๐ ๋ฐฑ์ค 14425 - ๋ฌธ์์ด ์งํฉ
๋ฌธ์ : ๋ฐฑ์ค 14425 - ๋ฌธ์์ด ์งํฉ
๐ก ๋์ ํ์ด
์ ๋ฒ์ ํ์๋ ๋ฃ๋ณด์ก ๋ฌธ์ ์ ๋น์ทํ๋ฐ, ์๊ฐ๋ณต์ก๋๋ฅผ ์ถ๊ฐ์ ์ผ๋ก ๊ณ ๋ คํด์ผํ๋ ๋ฌธ์ ์๋ค.
์
๋ ฅ์กฐ๊ฑด์ N๊ณผ M์ด (1<= N,M <= 10,000)
์ผ๋ก ์ฃผ์ด์ก๋๋ฐ,
๊ธฐ๋ณธ์ ์ผ๋ก input()
์ sys
๋ก ์ ์ธํ๋ค๊ณ ํด์ ํด๊ฒฐ๋๋ ๋ฌธ์ ๊ฐ ์๋์๋ค.
๊ทธ๋์ ์ฒ์์ ์ ์ธํ๋ count
๊ฐ ๋ฌธ์ ์ธ์ค ์๊ณ if ~ in ~
์ผ๋ก๋ ํด๋ดค์ง๋ง ๊ฒฐ๊ณผ๋ ๋๊ฐ์๋ค.
์ฐพ์๋ณด๋ ํ์ด์ฌ์ ์๋ฃํ์ ๋ฐ๋ผ ์๊ฐ๋ณต์ก๋๊ฐ ๋ค๋ฅธ๋ฐ ๊ทธ๊ฒ์ ์๊ฐํ์ง ๋ชปํ๋ค.
์ผ๋ฐ์ ์ผ๋ก list
์ ์ฝ์
, ์ ๊ฑฐ, ํ์, ํฌํจ์ฌ๋ถ๋ ๋ณดํต ์๊ฐ๋ณต์ก๋๊ฐ O(N)
์ด๊ณ dict, set
์ ์ฝ์
, ์ ๊ฑฐ, ํ์, ํฌํจ์ฌ๋ถ๋ ๋ณดํต ์๊ฐ๋ณต์ก๋๊ฐ O(1)
์ด๋ค.
dict, set
์ ์๊ฐ๋ณต์ก๋๊ฐ ๋ฎ์ ์ด์ ๋ hash
๊ฐ์ ์ฌ์ฉํ๊ธฐ๋๋ฌธ์ ๋น ๋ฅธ ์ ๊ทผ์ด ๊ฐ๋ฅํ๋ค.
๊ฐ์ ์์, index์ ์ ๊ทผํ ๋๋ ๋ณดํต list
๋ฅผ ๋ง์ด ์ฌ์ฉํ๊ณ , ๊ฐ์ ํ์์ด๋ ํ์ธ์ ๋ณดํต dictionary, set
ํ์ ๋ง์ด ์ฌ์ฉํ๋ค.
์ฌ์ง ํ๋จ์ ์๊ฐ๋ณต์ก๋๊ฐ ๋๊ฒ ๋์จ ํ์ ์ list
ํ์ผ๋ก, ์๋จ์ ์๊ฐ๋ณต์ก๋๊ฐ ๋ฎ๊ฒ ๋์จ ํ์ ์ dictionary, set
ํ์ ์ด์ฉํ์ ๋์ ์ฌ์ง์ด๋ค.
ํ์ฐํ๊ฒ ์ฐจ์ด๊ฐ ๋๋๊ฒ์ ํ์ธํ ์ ์๋ค.
โก๏ธ ๊ฒฐ๋ก
์ ๋ตํ์ ์ ๋ฐ์๋๋ฐ ์๊ฐ๋ณต์ก๋๊ฐ ๋๋ฌด ๋๊ฒ๋์จ๋ค ์ถ์ผ๋ฉด ์๋ฃํ์ ๋ฐ๊ฟ์ ์ ์ฉํด๋ณด์!!!
# ๋ฐฉ๋ฒ 1: dict()
import sys
input = sys.stdin.readline
n, m = map(int, input().split())
cnt = 0
S = dict()
for i in range(n):
index = input().strip()
S[index] = True
for j in range(m):
check = input().strip()
if check in S:
cnt+=1
print(cnt)
# ๋ฐฉ๋ฒ 2: set()
import sys
input = sys.stdin.readline
n, m = map(int, input().split())
cnt = 0
S =
for j in range(m):
if input().strip() in S:cnt+=1
print(cnt)
# ์๋ชป๋ ๋ฐฉ๋ฒ 3: list()
import sys
input = sys.stdin.readline
n, m = map(int, input().split())
cnt = 0
S = [input().strip() for _ in range(n)]
for j in range(m):
if input().strip() in S:cnt+=1
print(cnt)
'Algorithm > ๋ฐฑ์ค(BOJ)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[python] ๋ฐฑ์ค 2920 - ์๊ณ (0) | 2021.04.05 |
---|---|
[python] ๋ฐฑ์ค 9012 - ๊ดํธ (0) | 2021.04.01 |
[python] ๋ฐฑ์ค 1764 - ๋ฃ๋ณด์ก (0) | 2021.04.01 |
[python] ๋ฐฑ์ค 11656 - ์ ๋ฏธ์ฌ ๋ฐฐ์ด (0) | 2021.04.01 |
[python] ๋ฐฑ์ค 10798 - ์ธ๋ก ์ฝ๊ธฐ (0) | 2021.04.01 |
๋๊ธ