Algorithm/BOJ

[BOJ] ๊ณต (#1547)

Earth Wave 2022. 4. 15. 20:46

 

 

๋ฌธ์ œ 

 

์„ธ์ค€์ด๋Š” ์ปต 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