์ƒˆ์†Œ์‹

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

๋ฐฑ์ค€ (boj) 10809 ํŒŒ์ด์ฌ - ์•ŒํŒŒ๋ฒณ ์ฐพ๊ธฐ

  • -

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

 

10809๋ฒˆ: ์•ŒํŒŒ๋ฒณ ์ฐพ๊ธฐ

๊ฐ๊ฐ์˜ ์•ŒํŒŒ๋ฒณ์— ๋Œ€ํ•ด์„œ, a๊ฐ€ ์ฒ˜์Œ ๋“ฑ์žฅํ•˜๋Š” ์œ„์น˜, b๊ฐ€ ์ฒ˜์Œ ๋“ฑ์žฅํ•˜๋Š” ์œ„์น˜, ... z๊ฐ€ ์ฒ˜์Œ ๋“ฑ์žฅํ•˜๋Š” ์œ„์น˜๋ฅผ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•œ๋‹ค. ๋งŒ์•ฝ, ์–ด๋–ค ์•ŒํŒŒ๋ฒณ์ด ๋‹จ์–ด์— ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š๋‹ค๋ฉด -1์„ ์ถœ๋ ฅํ•œ๋‹ค. ๋‹จ์–ด์˜ ์ฒซ ๋ฒˆ์งธ ๊ธ€์ž๋Š” 0๋ฒˆ์งธ ์œ„์น˜์ด๊ณ , ๋‘ ๋ฒˆ์งธ ๊ธ€์ž๋Š” 1๋ฒˆ์งธ ์œ„์น˜์ด๋‹ค.

www.acmicpc.net

 

์†Œ๋ฌธ์ž ์ˆœ์„œ๋Œ€๋กœ ์ธ๋ฑ์‹ฑ์„ ํ•ด์•ผํ•œ๋‹ค. (a๋ถ€ํ„ฐ z๊นŒ์ง€)  ์—ฌ๊ธฐ์„œ abcd~ ์ง์ ‘ z๊นŒ์ง€ ์ž…๋ ฅํ•˜๊ฑฐ๋‚˜, ์•„์Šคํ‚ค์ฝ”๋“œ๋ฅผ ์ด์šฉํ•ด๋„ ๋ ๊ฒƒ๊ฐ™๋‹ค. ํ•˜์ง€๋งŒ ์•„์Šคํ‚ค์ˆซ์ž๋ฅผ ํ™•์ธํ•˜๋ฉฐ ์งœ๋Š”๊ฒƒ๋ณด๋‹ค๋Š” ํƒ€์ž๊ฐ€ ๋” ๋น ๋ฅผ๊ฒƒ๊ฐ™์•˜๋‹ค.

1. alphabet = [a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z] ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์–ด ์ค€๋‹ค. Input๋  ๋‹จ์–ด ํ•œ๊ธ€์ž ํ•œ๊ธ€์ž์˜ ์ž๋ฆฌ๋ฅผ ์ฐพ๊ธฐ์œ„ํ•จ.

2. array = [-1,-1,-1,-1,-1,''''''''''''''''''''''''''''''] ๋กœ ๊ตฌ์„ฑ๋œ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋งŒ๋“ค์–ด์ค€๋‹ค. ๊ธธ์ด๋Š” ์œ„์˜ ์•ŒํŒŒ๋ฒณ๋ฆฌ์ŠคํŠธ์™€ ๊ฐ™์ดํ•ด์•ผํ•œ๋‹ค. ์•„๋‹ˆ๋ผ๋ฉด for๋ฌธ์—์„œ ์ง์ ‘ -1์„ ๋„ฃ์–ด๋„๋˜์ง€๋งŒ ์ด๊ฒŒ ๋” ๊ฐ„๋‹จํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค.

3. Input๋œ ๋‹จ์–ด๋ฅผ for๋ฌธ์œผ๋กœ alphabet(list)๊ณผ ๋น„๊ตํ•ด ์ž๋ฆฌ๋ฅผ ์ฐพ๋Š”๋‹ค. ๋‹ค์Œ ๋‹จ์–ด์˜ ์ธ๋ฑ์‹ฑ๋ฒˆํ˜ธ๋ฅผ array(list)์— ๋„ฃ์–ด์ค€๋‹ค.

*school, book๊ณผ ๊ฐ™์ด ์•ŒํŒŒ๋ฒณ์ด ์ค‘๋ณต๋œ ๋‹จ์–ด๊ฐ€ ๋“ค์–ด์˜ฌ๊ฒฝ์šฐ๋ฅผ ๋Œ€๋น„ํ•˜์—ฌ, ์ตœ์ดˆ์— -1์ธ ๊ฒฝ์šฐ์—๋งŒ ์ž๋ฆฌ๊ฐ’์„ ๋„ฃ์–ด์ฃผ๋„๋ก if๋ฌธ์„ ์„ค์ •ํ•œ๋‹ค.

 

s = list(map(str,input()))
alphabet = list('abcdefghijklmnopqrstuvwxyz')
array = [-1 for j in range(len(alphabet))]
for i in range(len(s)):
    if array[alphabet.index(s[i])] == -1 : array[alphabet.index(s[i])] = i
for j in array :
    print(j, end=" ")
Contents

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

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