MapleStory Finger Point

๐Ÿƒ‍โ™‚๏ธBaekjoon/Python

#10809 ์•ŒํŒŒ๋ฒณ ์ฐพ๊ธฐ - python

HYEJU01 2024. 4. 15. 22:32

 

S = input()
tmp = []
i ,j= 0,0

for i in range(26):
    tmp.append(-1)

for j in range(len(S)):
    if (tmp[ord(S[j])-97]==-1):
        tmp[ord(S[j])-97] = j  

print(*tmp, sep=" ")

 

๊ฐ„๋‹จํ•œ ์›๋ฆฌ๋งŒ ์•Œ๋ฉด ๋งค์šฐ ์‰ฝ๊ฒŒ ํ’€ ์ˆ˜ ์žˆ๋‹ค!

 

1) -1 ๋ฏธ๋ฆฌ ๋ฐฐ์น˜ํ•ด๋‘” tmp ๋ฆฌ์ŠคํŠธ ๋งŒ๋“ค์–ด๋‘๊ณ 

2) ( ๋ฌธ์ž.์•„์Šคํ‚ค ์ฝ”๋“œ ๊ฐ’ - 97 ) == -1  

3)  j ์œ„์น˜ ๋„ฃ์–ด์ค€๋‹ค.

 

๋ฌธ์ž๋Š” a (97) ~ z (122) ๊นŒ์ง€์˜ ๊ฐ’์ด ์ฃผ์–ด์ ธ์žˆ๋Š” ์ƒํƒœ.

์—ฌ๊ธฐ์—์„œ -97 ์„ ํ•ด์ฃผ๊ฒŒ๋˜๋ฉด

a ๋ถ€ํ„ฐ z ๊นŒ์ง€์˜ ๊ฐ’์„  0 ~ 26์œผ๋กœ ์žก์„ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค ! 

์ฆ‰, tmp[0~26] ์— S ๋ฌธ์ž ์ธ๋ฑ์Šค๊ฐ’ ( j ) ์„  ์‰ฝ๊ฒŒ ๋„ฃ์„ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

 

 

 

<< ๐Ÿคฎ ๋ง‰ํžŒ ์ด์œ  & ํ•ด๊ฒฐ  >>

for i in range(len(S)):
    tmp.append(ord(S[i]))

print(tmp)

# i+1 ์œ„์น˜๊ฐ’

for asc in range(122):
    while True:
        i=0
        if asc == tmp[i]: #97 , tmp 0~7
            print(i+1)
            asc+=1
        else:
            i+=1
        print("-1")
        break

 

๋ฌธ์ž์—ด ์˜ ๋ฌธ์ž ํ•˜๋‚˜ํ•˜๋‚˜๋ฅผ ์ฐจ๋ก€๋Œ€๋กœ ord() ๋ณ€ํ™˜์‹œ์ผœ์„œ tmp ๋ฆฌ์ŠคํŠธ์— ๋„ฃ๋Š”๋‹ค.

IF )  tmp ๋ฆฌ์ŠคํŠธ์™€ ๋™์ผํ•œ ๊ฐ’์˜ asc ๋ฌธ์ž๋ฅผ ์ฐพ์œผ๋ฉด

ํ•ด๋‹น tmp ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ ๊ฐ’์„ ์ถœ๋ ฅํ•˜๊ณ 

tmp[i++ ]

ELSE ) 

- 1 ์„ ์ถœ๋ ฅํ•œ๋‹ค.

 

๋กœ์ง์„ ์ด๋Ÿฐ์‹์œผ๋กœ ๊ตฌํ˜„ํ•ด๋ณด๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ

๋„ˆ๋ฌด ๋ณต์žกํ•ด์„œ ํฌ๊ธฐํ–ˆ๋‹ค.... ๐Ÿ˜จ๐Ÿ˜จ

 

 

 

<< ๊ฐœ๋… >> 

๐Ÿ’ฌ 'a'์˜ ์•„์Šคํ‚ค ์ฝ”๋“œ ๊ฐ’: 97 ~  'z'์˜ ์•„์Šคํ‚ค ์ฝ”๋“œ ๊ฐ’: 122

๐Ÿ’ฌ  ์•ŒํŒŒ๋ฒณ์€ ์ด 26๊ฐœ๋กœ ๊ตฌ์„ฑ ๋˜์–ด์žˆ์Œ.

๐Ÿ”” ord()  : ๋ฌธ์ž๋ฅผ ์•„์Šคํ‚ค์ฝ”๋“œ ๊ฐ’์œผ๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ 

๐Ÿ”” ๋ฆฌ์ŠคํŠธ๋ช….append() : ๋ฆฌ์ŠคํŠธ์— ๊ฐ’ ์ถ”๊ฐ€ํ•˜๊ธฐ

๐Ÿ”” print(*๋ฆฌ์ŠคํŠธ๋ช…, sep=" ")  : ๋ฆฌ์ŠคํŠธ ์ถœ๋ ฅ ์‹œ ๋Œ€๊ด„ํ˜ธ ์—†์ด ์ถœ๋ ฅํ•˜๋Š” ๋ฐฉ๋ฒ•.