MapleStory Finger Point

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

#10811 ๋ฐ”๊ตฌ๋‹ˆ - python

HYEJU01 2024. 4. 15. 04:27

<< ๋ฌธ์ œ ๋„์‹ํ™”  >>

N,M=map(int,input().split())
s,tmp= [],[]

for x in range(N):
    s.append(x+1) 

for y in range(M):
    i,j = map(int,input().split())  
    tmp = s[i-1:j] # (0~n-1)
    tmp.reverse()
    s[i-1:j] = tmp

print(*s, sep=" ")

 

1 ~ 4 ์ด๋ฉด ์ธ๋ฑ์Šค์— ๋งž๊ฒŒ 0 ~ 4 ์œผ๋กœ ๋ฐ”๊ฟ”์ค˜์•ผํ•˜๋Š”๋ฐ

๋ฆฌ์ŠคํŠธ ๋ฒ”์œ„ ์„ ํƒ ์—ฐ์‚ฐ์ž๋Š” 0 ~ n-1 ๋ฒ”์œ„์ด๋ฏ€๋กœ

( i - 1 ~ j ) ํ•ด์ฃผ๋ฉด ๋œ๋‹ค !

 

 

 

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

 s[i-1:j].reverse()

์ฒ˜์Œ์—๋Š” ์ด๋Ÿฐ์‹์œผ๋กœ ๋„์ „ํ•ด๋ดค๋Š”๋ฐ ์•ˆ๋๋‹ค ^_^

์ถœ๋ ฅํ•ด๋ณด๋ฉด None ๊ฐ’๋งŒ ๋‚˜์˜จ๋‹ค ใ… 

  v.append(s[i-1:j])
    v.reverse()
    s.append(v)

 

 

๊ทธ๋ž˜์„œ ๋Œ€์ถฉ v ๋ผ๋Š” ์ž„์‹œ๋ฆฌ์ŠคํŠธ์— ๋„ฃ์–ด์„œ reverse ํ•œ๋‹ค์Œ์—

๋‹ค์‹œ ๋„ฃ์–ด๋ณด๋ ค๊ณ  ํ–ˆ์ง€๋งŒ ์ƒ๊ฐ๋Œ€๋กœ ์•ˆ๋๊ณ ...

 

๋ฆฌ์ŠคํŠธ ์ธ๋ฑ์Šค + ๋ฌธ์ž์—ด ๋ฒ”์œ„ ์„ ํƒ ์—ฐ์‚ฐ์ž ์ง€์ •ํ•ด์„œ ์‚ฝ์ž… ๊ฐ€๋Šฅํ•จ์„ ๊นŒ๋จน๊ณ  ์žˆ์—ˆ๋‹ค ๐Ÿ˜จ

๊ทธ๋ฆฌ๊ณ  append ์‚ฌ์šฉ์ด ์•„๋‹Œ ๊ทธ๋ƒฅ ๋Œ€์ž…ํ•ด๋„ ๋˜๋Š” ๋ฌธ์ œ์˜€์ง€์š”.. ํ•ด๊ฒฐ ์™„ !

    v = s[i-1:j]
    v.reverse() 
    s[i-1:j] = v

 

 

 

<< ๐Ÿ”” ์‚ฌ์šฉ๋œ ํ•จ์ˆ˜ >>

๐Ÿ”” map (์ ์šฉ์‹œํ‚ฌ ํ•จ์ˆ˜,  ์ ์šฉํ•  ๋ฐ˜๋ณต๊ฐ€๋Šฅํ•œ์ž๋ฃŒํ˜• ) :  ๊ฐ’์„ ์ผ๊ด„๋กœ ๋ณ€ํ™˜

๐Ÿ”” input().split()  : ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ฐ’์„ ๋ฐ›์Œ

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

๐Ÿ”” ๋ฆฌ์ŠคํŠธ๋ช….reverse() : ๋ฆฌ์ŠคํŠธ ์ž์ฒด๋ฅผ ์—ญ์ˆœ ๋ณ€๊ฒฝ, (์›๋ณธ ๋ฆฌ์ŠคํŠธ ๋ณ€๊ฒฝ๋จ!!)

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