๐ ๋ฐฑ์ค 1764 - ๋ฃ๋ณด์ก
๋ฌธ์ : ๋ฐฑ์ค 1764 - ๋ฃ๋ณด์ก
๐ก ๋์ ํ์ด
์ฒ์์ ์
๋ ฅ์ for i in range(n+m)
๋งํผ ๋ฐ์ผ๋ ค๊ณ ํ์ผ๋, ๊ทธ๋ ๊ฒ ๋๋ฉด ๋๊ฐ์ array
์ ๋ํ ๋ฒ์๋ฅผ ์๋ก ์ค์ ์ ํด์ผํ๊ธฐ ๋๋ฌธ์ ๋ฐ๋ณต๋ฌธ์ 2๊ฐ๋ก ๋๋ ์ค์ ํ๋ค.
์
๋ ฅ์ ๋จ์ํ๊ฒ input()
์ผ๋ก ๋ฐ์์ ์ฌ์ฉํ๋๊น ์๊ฐ์ด๊ณผ๊ฐ ๋ ๋ปํ๋ค. sys
๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์.
- input(): 3840ms
- sys.stdin.readline: 112ms
๋, list comprehension
์ค์ strip()
์ฝ๋๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฉด ์ถ๋ ฅ ํ์์ด ์๋ชป๋์์ต๋๋ค.
ํ์ ์ ๋ฐ์ผ๋๊น ๋ถ์ฌ์ฃผ๋๋ก ํ์.
์ด ๋ฌธ์ ์ ํต์ฌ ์ฝ๋๋ intersection(๊ต์งํฉ)
์ธ๋ฐ, ๋ ๊ฐ์ ๋ฆฌ์คํธ ์ค ๊ฒน์น๋ ์์๋ฅผ ์ถ๋ ฅํ๊ธฐ ์ํด ์ฌ์ฉํ๋ค.
intersection(๊ต์งํฉ)
์ ๋ค์๊ณผ ๊ฐ์ด 2๊ฐ์ง ๋ฐฉ๋ฒ์ผ๋ก ์ฌ์ฉ ํ ์ ์๋ค.
์ด๋, ์ฃผ์ ํ ์ ์ list
๋ฅผ set
ํ์ผ๋ก ํ ๋ณํ์ ํด์ค์ผํ๋ค.
- set(s1) & set(s1)
- s1.intersection(s2)
๋ง์ง๋ง ์ถ๋ ฅ์ ํด๋น๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ ์กฐ๊ฑด์ len()
์ ์ฌ์ฉํ๋ฉด ์ฝ๊ฒ ํด๊ฒฐํ ์ ์๋ค.
(์ฒ์์ cnt+=1
๋ฅผ ์จ์ผํ๋ ํค๋งธ๋๋ฐ, ์ด๋ฐ ๊ฐํธํ ๋ฐฉ๋ฒ์ด...)
import sys
input = sys.stdin.readline
n, m = map(int, input().split())
listen = [input().strip() for i in range(n)]
see = [input().strip() for j in range(m)]
# ๋ฐฉ๋ฒ 1
intersection = sorted(list(set(listen) & set(see)))
# ๋ฐฉ๋ฒ 2
intersection2 = sorted(list(set(listen).intersection(set(see))))
print(len(intersection))
for i in intersection:
print(i)
'Algorithm > ๋ฐฑ์ค(BOJ)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[python] ๋ฐฑ์ค 2920 - ์๊ณ (0) | 2021.04.05 |
---|---|
[python] ๋ฐฑ์ค 9012 - ๊ดํธ (0) | 2021.04.01 |
[python] ๋ฐฑ์ค 14425 - ๋ฌธ์์ด ์งํฉ (0) | 2021.04.01 |
[python] ๋ฐฑ์ค 11656 - ์ ๋ฏธ์ฌ ๋ฐฐ์ด (0) | 2021.04.01 |
[python] ๋ฐฑ์ค 10798 - ์ธ๋ก ์ฝ๊ธฐ (0) | 2021.04.01 |
๋๊ธ