๐ญ ๋ฌธ์ ์ดํด
์ด์ ์ ํ์๋ ์ซ์ ์นด๋ ๋ฌธ์ ์ ๊ฑฐ์ ๋น์ทํ๋ค.
์ฃผ์ด์ง ์ซ์ ์ ๋ ฅ๋ค์ด ์๊ทผ์ด๊ฐ ๊ฐ์ง ์ซ์ ์นด๋์ ์๋์ง ์ฌ๋ถ๋ฅผ ์ฒดํฌํ๋ ๋ฌธ์ ์๋ค๋ฉด,
์ด ๋ฌธ์ ๋ ์๊ทผ์ด๊ฐ ๊ทธ ์ซ์๋ค์ ๋ช ๊ฐ ๊ฐ์ง๊ณ ์๋ ์ง๋ ์ฒดํฌํด์ผ ํ๋ค๋ ์ ์ด๋ค.
Python์ Counter๋ฅผ ์ด์ฉํด์ ์๊ทผ์ด์ ์ซ์ ์นด๋๋ฅผ Key ๊ฐ์ผ๋ก ์นด๋๋ฒํธ, Value ๋ฅผ ์นด๋ ๊ฐ์๋ก ํ๋ ๋์ ๋๋ฆฌ๋ฅผ ์์ฑํ๋ค.
๊ทธ๋ฆฌ๊ณ ์ ๋ ฅ์ผ๋ก ๋ค์ด์จ ์ซ์๊ฐ Counter ๊ฐ์ฒด์ ์กด์ฌํ๋ค๋ฉด Value๋ฅผ ์ถ๋ ฅํ๊ณ , ์๋ค๋ฉด 0์ ์ถ๋ ฅํ๊ฒ ๊ตฌํํ๋ค.
๊ตฌํ ์ธ์ด: Python
import sys
from collections import Counter
r = sys.stdin.readline
answer = []
n, my_card = int(r()), Counter(map(int, r().split()))
m, num_list = int(r()), list(map(int, r().split()))
for num in num_list:
answer.append(my_card[num] if num in my_card.keys() else 0)
print(*answer)
์ฌ๊ธฐ์ ๋ Pythonic ํ๊ณ ์ถ๋ค๋ฉด,
import sys
from collections import Counter
r = sys.stdin.readline
_, my_card, _ = r(), Counter(r().split()), r()
print(" ".join(str(my_card[num]) if num in my_card else '0' for num in r().split()))
์๋ฐ ๊ฒ๋ ๊ฐ๋ฅํ๋ค ๐
'Problem_Solving' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ] ๋ฐฑ์ค 2512 ์์ฐ / ์ด๋ถํ์ (0) | 2021.02.11 |
---|---|
[BOJ] ๋ฐฑ์ค 1764 ๋ฃ๋ณด์ก / ์ด๋ถํ์ (0) | 2021.02.11 |
[BOJ] ๋ฐฑ์ค 1654 ๋์ ์๋ฅด๊ธฐ / ์ด๋ถํ์ (0) | 2021.02.09 |
[BOJ] ๋ฐฑ์ค 10815 ์ซ์ ์นด๋ / ์ด๋ถํ์ (0) | 2021.02.09 |
[BOJ] ๋ฐฑ์ค 2805 ๋๋ฌด ์๋ฅด๊ธฐ / ์ด๋ถํ์ (0) | 2021.02.09 |