[BOJ] ๊ณต (#1547)
๋ฌธ์
์ธ์ค์ด๋ ์ปต 3๊ฐ๋ฅผ ํ์ ์์ ์ผ๋ ฌ๋ก ์์ด๋์๋ค. ์ปต์ ๋ฒํธ๋ ๋งจ ์ผ์ชฝ ์ปต๋ถํฐ ์์๋๋ก 1๋ฒ, 2๋ฒ 3๋ฒ์ด๊ณ , ์ธ์ค์ด๋ ์ด ์ปต์ ์ด์ฉํด์ ๊ฒ์์ ํ๋ ค๊ณ ํ๋ค.
๋จผ์ 1๋ฒ ์ปต์ ์๋์ ๊ณต์ ํ๋ ๋ฃ๋๋ค. ์ธ์ค์ด๋ ๋ ์ปต์ ๊ณ ๋ฅธ ๋ค์, ๊ทธ ์์น๋ฅผ ๋ง๋ฐ๊พธ๋ ค๊ณ ํ๋ค. ์๋ฅผ ๋ค์ด, ๊ณ ๋ฅธ ์ปต์ด 1๋ฒ๊ณผ 2๋ฒ์ด๋ผ๋ฉด, 1๋ฒ ์ปต์ด ์๋ ์์น์ 2๋ฒ ์ปต์ ์ด๋์ํค๊ณ , ๋์์ 2๋ฒ ์ปต์ด ์๋ ์์น์ 1๋ฒ ์ปต์ ์ด๋์์ผ์ผ ํ๋ค. ์ด๋ ๊ณต์ ์์ง์ด์ง ์๊ธฐ ๋๋ฌธ์, ๊ณต์ ์์น๋ ๋งจ ์ฒ์ 1๋ฒ ์ปต์ด ์๋ ์์น์ ๊ฐ๋ค.
์ธ์ค์ด๋ ์ปต์ ์์น๋ฅผ ์ด M๋ฒ ๋ฐ๊ฟ ๊ฒ์ด๋ฉฐ, ์ปต์ ์์น๋ฅผ ๋ฐ๊พผ ๋ฐฉ๋ฒ์ด ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง๋ค. ์์น๋ฅผ M๋ฒ ๋ฐ๊พผ ์ดํ์ ๊ณต์ด ๋ค์ด์๋ ์ปต์ ๋ฒํธ๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์ปต์ ์์น๋ฅผ ๋ฐ๊พผ ํ์ M์ด ์ฃผ์ด์ง๋ฉฐ, M์ 50๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ๋์งธ ์ค๋ถํฐ M๊ฐ์ ์ค์๋ ์ปต์ ์์น๋ฅผ ๋ฐ๊พผ ๋ฐฉ๋ฒ X์ Y๊ฐ ์ฃผ์ด์ง๋ฉฐ, X๋ฒ ์ปต๊ณผ Y๋ฒ ์ปต์ ์์น๋ฅผ ์๋ก ๋ฐ๊พธ๋ ๊ฒ์ ์๋ฏธํ๋ค. X์ Y์ ๊ฐ์ 3๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๊ณ , X์ Y๊ฐ ๊ฐ์ ์๋ ์๋ค.
์ปต์ ์ด๋์ํจ ํ์ ๊ณต์ด ์ปต ๋ฐ๊นฅ์ ์๋ ๊ฒฝ์ฐ๋ ์๋ค.
๋์ ์ฝ๋
t = int(input())
hash_map = {}
# ํด์๋งต์ ์ด์ฉํด ์ฒซ ๋ฒ์งธ ์ปต์ ๊ณต(1)์ด ์๋๋ก ๋ง๋ ๋ค.
for i in range(1,4):
if i == 1:
hash_map[i] = 1
else:
hash_map[i] = 0
# ๋ค์ด์จ ์ปต์ ๋ณํ์ ๋ฐ๋ผ value ๊ฐ(๊ณต์ ์์น)๊ฐ ๋ฐ๋๋๋ก ์ค์์นํด์ค๋ค.
for k in range(t):
a,b = map(int,input().split())
hash_map[b],hash_map[a] = hash_map[a],hash_map[b]
# ๊ณต์ ์์น๋ฅผ key๊ฐ์ผ๋ก reverseํ์ฌ 1์ด ์ด๋ค ์์น์ ์๋์ง ์์๋ธ๋ค.
reverse_dict= dict(map(reversed,hash_map.items()))
print(reverse_dict[1])
๋ถ์ > ๋๋ ํด์๋งต์ ์ด์ฉํด์ ๋ฌธ์ ๋ฅผ ํ์๋๋ฐ ์ฐ์ ์ปต์ ๋ฒํธ์ ๊ณต์ ์์น๋ฅผ ์ฐ๊ฒฐํ ํด์๋งต์ ๋ง๋ค์๋ค. ๊ทธ๋ฆฌ๊ณ ์ปต์ ๋ณํ์ ๋ฐ๋ผ ๊ณต์ ์์น๊ฐ ๋ฐ๋๋๋ก ๊ฐ์ ์ค์์นํด์ฃผ๊ณ ๋์ค์ ๊ณต์ ์์น๋ฅผ key ๊ฐ์ผ๋ก ๋ณด๋ด key ๊ฐ 1์ธ ๊ฒฝ์ฐ์ value ๊ฐ์ ์ถ๋ ฅํด์ ๋ฌธ์ ๋ฅผ ํ์๋ค. ์ด ์ฝ๋๋ฅผ ์์ฑํ๋ฉด์ ํด์๋งต์์ key ์ value ๊ฐ์ ๋ฐ๊ฟ์ฃผ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ธ ์ ์์๋ค.
1547๋ฒ: ๊ณต
์ฒซ์งธ ์ค์ ์ปต์ ์์น๋ฅผ ๋ฐ๊พผ ํ์ M์ด ์ฃผ์ด์ง๋ฉฐ, M์ 50๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ๋์งธ ์ค๋ถํฐ M๊ฐ์ ์ค์๋ ์ปต์ ์์น๋ฅผ ๋ฐ๊พผ ๋ฐฉ๋ฒ X์ Y๊ฐ ์ฃผ์ด์ง๋ฉฐ, X๋ฒ ์ปต๊ณผ Y๋ฒ ์ปต์ ์์น๋ฅผ ์๋ก ๋ฐ๊พธ๋ ๊ฒ
www.acmicpc.net