์ƒˆ์†Œ์‹

๐Ÿงฎ ์•Œ๊ณ ๋ฆฌ์ฆ˜/-- ๋ฐฑ์ค€ (BOJ) - Python

๋ฐฑ์ค€ (boj) ํŒŒ์ด์ฌ - 1620 ๋ฒˆ : ๋‚˜๋Š”์•ผ ํฌ์ผ“๋ชฌ ๋งˆ์Šคํ„ฐ ์ด๋‹ค์†œ

  • -

๋ฌธ์ œ ๋งํฌ : https://www.acmicpc.net/problem/1620

 

1620๋ฒˆ: ๋‚˜๋Š”์•ผ ํฌ์ผ“๋ชฌ ๋งˆ์Šคํ„ฐ ์ด๋‹ค์†œ

์ฒซ์งธ ์ค„์—๋Š” ๋„๊ฐ์— ์ˆ˜๋ก๋˜์–ด ์žˆ๋Š” ํฌ์ผ“๋ชฌ์˜ ๊ฐœ์ˆ˜ N์ด๋ž‘ ๋‚ด๊ฐ€ ๋งž์ถฐ์•ผ ํ•˜๋Š” ๋ฌธ์ œ์˜ ๊ฐœ์ˆ˜ M์ด ์ฃผ์–ด์ ธ. N๊ณผ M์€ 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 100,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ธ๋ฐ, ์ž์—ฐ์ˆ˜๊ฐ€ ๋ญ”์ง€๋Š” ์•Œ์ง€? ๋ชจ๋ฅด๋ฉด ๋ฌผ์–ด๋ด๋„ ๊ดœ์ฐฎ์•„. ๋‚˜๋Š” ์–ธ์ œ๋“ ์ง€ ์งˆ๋ฌธ์— ๋‹ตํ•ด์ค„ ์ค€๋น„๊ฐ€ ๋˜์–ด์žˆ์–ด. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ํฌ์ผ“๋ชฌ์˜ ๋ฒˆํ˜ธ๊ฐ€ 1๋ฒˆ์ธ ํฌ์ผ“๋ชฌ๋ถ€ํ„ฐ N๋ฒˆ์— ํ•ด๋‹นํ•˜๋Š” ํฌ์ผ“๋ชฌ๊นŒ์ง€ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ž…๋ ฅ์œผ๋กœ ๋“ค์–ด์™€. ํฌ์ผ“๋ชฌ์˜ ์ด๋ฆ„์€ ๋ชจ๋‘ ์˜์–ด๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ์žˆ๊ณ , ๋˜, ์Œ... ์ฒซ ๊ธ€์ž๋งŒ

www.acmicpc.net

 

 


 

๋ฌธ์ œ ๋ถ„๋ฅ˜ : ํ•ด์‹œ

 

์ฒ˜์Œ์— ๋ฌธ์ œ ๋ถ„๋ฅ˜๊ฐ€ ์ด๋ถ„ํƒ์ƒ‰์œผ๋กœ ๋˜์–ด์žˆ์–ด์„œ, ์ด๊ฑธ ์–ด๋–ป๊ฒŒ ์ด๋ถ„ํƒ์ƒ‰์œผ๋กœ ํ’€์ง€๋ผ๋Š” ์ƒ๊ฐ์œผ๋กœ ํ•œ์ฐธ์„ ๋ดค๋‹ค.

๊ฒฐ๊ตญ์— ๋‹ค๋ฅธ ๊ธ€๋“ค์„ ๋ณด๊ณ  ๋”•์…”๋„ˆ๋ฆฌ๋ฅผ ํ†ตํ•ด ํ•ด๊ฒฐํ•˜๋ฉด ๋œ๋‹ค๋Š”๊ฒƒ์„ ์•Œ์•˜๋‹ค.

 

์ˆซ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›์„๋•Œ๋Š” index ๋ฒˆํ˜ธ๋ฅผ ํ†ตํ•ด ๋ฆฌ์ŠคํŠธ๊ฐ’์„ ๋ฝ‘์•„๋‚ธ๋‹ค.

๋ฌธ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›์„๋•Œ๋Š” dictionary key๋ฅผ ํ†ตํ•ด ๊ฐ’์„ ๋ฝ‘์•„๋‚ธ๋‹ค.

 

 

*์ •๋‹ต์ฝ”๋“œ (Python)

 

import sys
input = sys.stdin.readline

N , M = map(int,input().split())
arr = [0]
dic = {}

for idx in range(1,N+1):
    i = input().rstrip()
    arr.append(i)
    dic[i] = idx



for _ in range(M):
    q = input().rstrip()
    if q.isalpha() :
        print(dic[q])
    elif q.isdigit() :
        print(arr[int(q)])

 

isalpha์™€ isdigit๋„ ์ด๋ฌธ์ œ๋ฅผ ํ†ตํ•ด ์ฒ˜์Œ์•Œ์•˜๋‹ค. try except๋กœ ๋ฌธ์ œ์ œ์ถœ์„ ํ–ˆ์ง€๋งŒ, ์ด๋Ÿฌํ•œ ํ•จ์ˆ˜๋ฅผ ๋ชฐ๋ž๋‹ค๋‹ˆ..

 

 

Contents

ํฌ์ŠคํŒ… ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

์ด ๊ธ€์ด ๋„์›€์ด ๋˜์—ˆ๋‹ค๋ฉด ๊ณต๊ฐ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.