๋‚ด ์ธ์ƒ์—์„œ ๋ฏฟ์„ ๊ฑด ์˜ค์ง ๋‚˜ ์ž์‹ ๋ฟ!

The only one you can truly trust is yourself.

๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ/Python ํ”„๋กœ๊ทธ๋ž˜๋ฐ

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ํƒ๋ฐฐ์ƒ์ž

๐ŸŽฎinspirer9 2023. 2. 19. 22:52
728x90
๋ฐ˜์‘ํ˜•

๋ฌธ์ œ ์„ค๋ช…

์˜์žฌ๋Š” ํƒ๋ฐฐ์ƒ์ž๋ฅผ ํŠธ๋Ÿญ์— ์‹ฃ๋Š” ์ผ์„ ํ•ฉ๋‹ˆ๋‹ค. ์˜์žฌ๊ฐ€ ์‹ค์–ด์•ผ ํ•˜๋Š” ํƒ๋ฐฐ์ƒ์ž๋Š” ํฌ๊ธฐ๊ฐ€ ๋ชจ๋‘ ๊ฐ™์œผ๋ฉฐ 1๋ฒˆ ์ƒ์ž๋ถ€ํ„ฐ n๋ฒˆ ์ƒ์ž๊นŒ์ง€ ๋ฒˆํ˜ธ๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์„œ๋Œ€๋กœ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ์— ์ผ๋ ฌ๋กœ ๋†“์—ฌ ์˜์žฌ์—๊ฒŒ ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค. ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ๋Š” ํ•œ ๋ฐฉํ–ฅ์œผ๋กœ๋งŒ ์ง„ํ–‰์ด ๊ฐ€๋Šฅํ•ด์„œ ๋ฒจํŠธ์— ๋†“์ธ ์ˆœ์„œ๋Œ€๋กœ(1๋ฒˆ ์ƒ์ž๋ถ€ํ„ฐ) ์ƒ์ž๋ฅผ ๋‚ด๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ์— ๋†“์ธ ์ˆœ์„œ๋Œ€๋กœ ํƒ๋ฐฐ์ƒ์ž๋ฅผ ๋‚ด๋ ค ๋ฐ”๋กœ ํŠธ๋Ÿญ์— ์‹ฃ๊ฒŒ ๋˜๋ฉด ํƒ๋ฐฐ ๊ธฐ์‚ฌ๋‹˜์ด ๋ฐฐ๋‹ฌํ•˜๋Š” ์ˆœ์„œ์™€ ํƒ๋ฐฐ์ƒ์ž๊ฐ€ ์‹ค๋ ค ์žˆ๋Š” ์ˆœ์„œ๊ฐ€ ๋งž์ง€ ์•Š์•„ ๋ฐฐ๋‹ฌ์— ์ฐจ์งˆ์ด ์ƒ๊น๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํƒ๋ฐฐ ๊ธฐ์‚ฌ๋‹˜์ด ๋ฏธ๋ฆฌ ์•Œ๋ ค์ค€ ์ˆœ์„œ์— ๋งž๊ฒŒ ์˜์žฌ๊ฐ€ ํƒ๋ฐฐ์ƒ์ž๋ฅผ ์‹ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋งŒ์•ฝ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ์˜ ๋งจ ์•ž์— ๋†“์ธ ์ƒ์ž๊ฐ€ ํ˜„์žฌ ํŠธ๋Ÿญ์— ์‹ค์–ด์•ผ ํ•˜๋Š” ์ˆœ์„œ๊ฐ€ ์•„๋‹ˆ๋ผ๋ฉด ๊ทธ ์ƒ์ž๋ฅผ ํŠธ๋Ÿญ์— ์‹ค์„ ์ˆœ์„œ๊ฐ€ ๋  ๋•Œ๊นŒ์ง€ ์ž ์‹œ ๋‹ค๋ฅธ ๊ณณ์— ๋ณด๊ด€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ณ ๊ฐ์˜ ๋ฌผ๊ฑด์„ ํ•จ๋ถ€๋กœ ๋•…์— ๋‘˜ ์ˆ˜ ์—†์–ด ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ๋ฅผ ์ถ”๊ฐ€๋กœ ์„ค์น˜ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ๋Š” ์•ž ๋’ค๋กœ ์ด๋™์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ์ž…๊ตฌ ์™ธ์— ๋‹ค๋ฅธ ๋ฉด์ด ๋ง‰ํ˜€ ์žˆ์–ด์„œ ๋งจ ์•ž์˜ ์ƒ์ž๋งŒ ๋บ„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์ฆ‰, ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰์— ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ์— ๋ณด๊ด€ํ•œ ์ƒ์ž๋ถ€ํ„ฐ ๊บผ๋‚ด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค). ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ๋ฅผ ์ด์šฉํ•ด๋„ ๊ธฐ์‚ฌ๋‹˜์ด ์›ํ•˜๋Š” ์ˆœ์„œ๋Œ€๋กœ ์ƒ์ž๋ฅผ ์‹ฃ์ง€ ๋ชป ํ•œ๋‹ค๋ฉด, ๋” ์ด์ƒ ์ƒ์ž๋ฅผ ์‹ฃ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ์˜์žฌ๊ฐ€ 5๊ฐœ์˜ ์ƒ์ž๋ฅผ ์‹ค์–ด์•ผ ํ•˜๋ฉฐ, ํƒ๋ฐฐ ๊ธฐ์‚ฌ๋‹˜์ด ์•Œ๋ ค์ค€ ์ˆœ์„œ๊ฐ€ ๊ธฐ์กด์˜ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ์— ๋„ค ๋ฒˆ์งธ, ์„ธ ๋ฒˆ์งธ, ์ฒซ ๋ฒˆ์งธ, ๋‘ ๋ฒˆ์งธ, ๋‹ค์„ฏ ๋ฒˆ์งธ ๋†“์ธ ํƒ๋ฐฐ์ƒ์ž ์ˆœ์„œ์ธ ๊ฒฝ์šฐ, ์˜์žฌ๋Š” ์šฐ์„  ์ฒซ ๋ฒˆ์งธ, ๋‘ ๋ฒˆ์งธ, ์„ธ ๋ฒˆ์งธ ์ƒ์ž๋ฅผ ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ์— ๋ณด๊ด€ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ํ›„ ๋„ค ๋ฒˆ์งธ ์ƒ์ž๋ฅผ ํŠธ๋Ÿญ์— ์‹ฃ๊ณ  ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ์—์„œ ์„ธ ๋ฒˆ์งธ ์ƒ์ž ๋นผ์„œ ํŠธ๋Ÿญ์—์‹ฃ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์œผ๋กœ ์ฒซ ๋ฒˆ์งธ ์ƒ์ž๋ฅผ ์‹ค์–ด์•ผ ํ•˜์ง€๋งŒ ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ์—์„œ๋Š” ๋‘ ๋ฒˆ์งธ ์ƒ์ž๋ฅผ, ๊ธฐ์กด์˜ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ์—๋Š” ๋‹ค์„ฏ ๋ฒˆ์งธ ์ƒ์ž๋ฅผ ๊บผ๋‚ผ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋”์ด์ƒ์˜ ์ƒ์ž๋Š” ์‹ค์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํŠธ๋Ÿญ์—๋Š” 2๊ฐœ์˜ ์ƒ์ž๋งŒ ์‹ค๋ฆฌ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

ํƒ๋ฐฐ ๊ธฐ์‚ฌ๋‹˜์ด ์›ํ•˜๋Š” ์ƒ์ž ์ˆœ์„œ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜ ๋ฐฐ์—ด order๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์˜์žฌ๊ฐ€ ๋ช‡ ๊ฐœ์˜ ์ƒ์ž๋ฅผ ์‹ค์„ ์ˆ˜ ์žˆ๋Š”์ง€ return ํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•˜์„ธ์š”.

์ œํ•œ ์‚ฌํ•ญ

  • 1 ≤ order์˜ ๊ธธ์ด ≤ 1,000,000
  • order๋Š” 1์ด์ƒ order์˜ ๊ธธ์ด ์ดํ•˜์˜ ๋ชจ๋“  ์ •์ˆ˜๊ฐ€ ํ•œ๋ฒˆ์”ฉ ๋“ฑ์žฅํ•ฉ๋‹ˆ๋‹ค.
  • order[i]๋Š” ๊ธฐ์กด์˜ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ์— order[i]๋ฒˆ์งธ ์ƒ์ž๋ฅผ i+1๋ฒˆ์งธ๋กœ ํŠธ๋Ÿญ์— ์‹ค์–ด์•ผ ํ•จ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ

order result
[4, 3, 1, 2, 5] 2
[5, 4, 3, 2, 1] 5

์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…

์ž…์ถœ๋ ฅ ์˜ˆ #1

  • ๋ฌธ์ œ ์˜ˆ์‹œ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ #2

  • ๋ชจ๋“  ์ƒ์ž๋ฅผ ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ์— ๋ชจ๋‘ ๋„ฃ๊ณ , ์—ญ์ˆœ์œผ๋กœ ํ•˜๋‚˜์”ฉ ๋นผ์„œ ํŠธ๋Ÿญ์— ์‹ฃ์Šต๋‹ˆ๋‹ค.

ํ’€์ด

  • ์ด ๋ฌธ์ œ๋Š” ๋ณด์ž๋งˆ์ž ์Šคํƒ ๋ฌธ์ œ๋„ค?๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค.
    • ๋ฉ”์ธ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ๋Š” ํ(FIFO)
    • ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ ๋ฒจํŠธ๋Š” ์Šคํƒ(LIFO)
  • ๋…ธ๊ฐ€๋‹ค๋กœ ํ•ด๋ณด๋ฉด
    • ํ : 4,3,1,2,5 / ์Šคํƒ : null
    • ํ : 3,1,2,5 / ์Šคํƒ : 4
    • ํ : 1,2,5 / ์Šคํƒ : 4, 3
    • ํ : 2,5 / ์Šคํƒ : 4, 3
    • ํ : 5 / ์Šคํƒ : 4, 3
    • ํ : 5 / ์Šคํƒ : 4
    • ํ : 5 / ์Šคํƒ : 
    • ํ : / ์Šคํƒ : 
  • ...๊ฐ€ ์•„๋‹ˆ๋„ค ใ…ก.ใ…ก ๋ฌด์ง€์„ฑ ์ฝ”๋”ฉํ•˜๋ฉด ์ด๋ ‡๊ฒŒ ์‹œ๊ฐ„์„ ๋‚ญ๋น„ํ•œ๋‹ค... ์ด๋ง์ด์•ผ...
    • ๋ฉ”์ธ ์ปจํ…Œ์ด๋„ˆ ๋ฐธํŠธ์—์„œ : 1, 2, 3, 4, 5๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ๋‚˜์˜ค๊ณ ...
    • ํƒ๋ฐฐ ๊ธฐ์‚ฌ์˜ ์˜ค๋”๊ฐ€ : 4, 3, 1, 2, 5๊ฐ€ ์žˆ๊ณ ,
    • ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ ๋ฐธํŠธ๋กœ ์Šคํƒ์ด ํ•˜๋‚˜ ์žˆ๋Š” ๊ตฌ์กฐ.
  • ๋‹ค์‹œ ๋…ธ๊ฐ€๋‹ค๋กœ ํ•ด๋ณด๋ฉด
    • 1์ด ๋‚˜์˜ค๋Š”๋ฐ ์˜ค๋”(4,3,1,2,5)์— ์—†์œผ๋‹ˆ๊นŒ ์Šคํƒ์œผ๋กœ
    • ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ : 1,2,3,4,5 / ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ
    • ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ : 2,3,4,5 / ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ 1
    • ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ : 3,4,5 / ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ 1,2
    • ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ : 4,5 / ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ 1,2,3
    • ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ : 5 / ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ 1,2,3
    • ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ : 5 / ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฐธํŠธ 1,2
    • ๋ฉ”์ธ, ๋ณด์กฐ ์ปจํ…Œ์ด๋„ˆ ์–‘์ชฝ ๋ชจ๋‘ ์˜ค๋”์— ์žˆ๋Š” ์ˆซ์ž๊ฐ€ ์—†์œผ๋‹ˆ๊นŒ 2๋ฅผ ๋ฆฌํ„ด
  • ๋ญ”๊ฐ€ ์ด์ƒํ•˜์ง€? ๋ญ๊ฐ€ ์ด์ƒํ•˜๋‹ค. ๊ทผ๋ฐ ๋ญ๊ฐ€ ์ด์ƒํ•œ์ง€ ๋ชจ๋ฅด๊ฒ ๋‹ค.
  • ๊ทธ๋ƒฅ ์ด๋Œ€๋กœ ๊ตฌํ˜„ํ•ด์„œ ๋งŒ๋“ค๋ฉด ๋˜๋‚˜?
    • [4, 6, 8, 1...์ด ์žˆ๋‹ค๊ณ  ์น˜์ž]
      • 4๊ฐ€ ์žˆ์œผ๋ฉด, 1,2,3์„ ์Šคํƒ์— ๋„ฃ๊ณ ,
      • 6์ด ์žˆ์œผ๋ฉด 5๋ฅผ ์Šคํƒ์— ๋„ฃ๊ณ ,
      • 8์ด ์žˆ์œผ๋ฉด 7์„ ์Šคํƒ์— ๋„ฃ๊ณ ,
      • 1์„ ๋บ„๋ ค๋ฉด ์Šคํƒ์—์„œ ๋นผ์•ผ๋˜์ง€๋งŒ, ์Šคํƒ์—์„  7์„ ๋บ„ ์ˆ˜ ์žˆ์œผ๋‹ˆ ์‹คํŒจ
    • [1, 3, 2 ]
      • 1 ๋นผ๊ณ , 2์Šคํƒ์— ๋„ฃ๊ณ , 3 ๋นผ๊ณ , 2 ์Šคํƒ์—์„œ ๋นผ๊ณ 
    • [3,2,1]
      • ์Šคํƒ์— 1, 2 ๋„ฃ๊ณ 
      • 3๋นผ๊ณ , 2๋นผ๊ณ , 1๋บ€๋‹ค. 
    • [3,2,1,4, 5]
      • ์Šคํƒ์— 1, 2 ๋„ฃ๊ณ 
      • 3๋นผ๊ณ , 2๋นผ๊ณ , 1๋บ€๋‹ค.
      • 4๋นผ๊ณ , 5๋บ€๋‹ค.
  • ๋ญ”๊ฐ€ ๋ฐฐ์—ด ๊ฐ’๋งŒ ์ฝ๊ณ  ์•Œ ์ˆ˜ ์žˆ์„ ๊ฑฐ๋ผ ์ƒ๊ฐํ–ˆ๋Š”๋ฐ ๋ชจ๋ฅด๊ฒ ๋‹ค.
    • 1์‹œ๊ฐ„ ๋„˜๊ฒŒ ๊ณ ๋ฏผ
    • 2์‹œ๊ฐ„ ๋„˜๊ฒŒ ๊ณ ๋ฏผ ์ค‘
    • ๊ทธ๋ƒฅ ์งœ๋ณด์ž!
  • ๋ฌด์ง€์„ฑ ์ฝ”๋”ฉ ๊ฐ€์ฆˆ์•„!
    • ๋ง์€ ์‰ฌ์› ์ง€๋งŒ ์•„๋ฌด๋ฆฌ ์งœ๋„ ์—๋Ÿฌ๊ฐ€ ใ…‹ใ…‹ใ…‹
def solution(order):
    main_Container_Belt = 1
    order_index = 0
    stack = []
    while True:
        print(order[order_index], main_Container_Belt, stack)
        if order[order_index] == main_Container_Belt:
            order_index += 1
            pass
        elif len(stack) > 0 and order[order_index] == stack[-1]:
            order_index += 1
            stack.pop()
        else:
            stack.append(main_Container_Belt)
        
        main_Container_Belt += 1
        if main_Container_Belt > len(order):
            break
    return order_index
    
ํ…Œ์ŠคํŠธ 1
์ž…๋ ฅ๊ฐ’ ใ€‰	[4, 3, 1, 2, 5]
๊ธฐ๋Œ“๊ฐ’ ใ€‰	2
์‹คํ–‰ ๊ฒฐ๊ณผ ใ€‰	ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ•˜์˜€์Šต๋‹ˆ๋‹ค.
์ถœ๋ ฅ ใ€‰	4 1 []
4 2 [1]
4 3 [1, 2]
4 4 [1, 2, 3]
3 5 [1, 2, 3]

ํ…Œ์ŠคํŠธ 2
์ž…๋ ฅ๊ฐ’ ใ€‰	[5, 4, 3, 2, 1]
๊ธฐ๋Œ“๊ฐ’ ใ€‰	5
์‹คํ–‰ ๊ฒฐ๊ณผ ใ€‰	์‹คํ–‰ํ•œ ๊ฒฐ๊ด๊ฐ’ 1์ด ๊ธฐ๋Œ“๊ฐ’ 5๊ณผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค.
์ถœ๋ ฅ ใ€‰	5 1 []
5 2 [1]
5 3 [1, 2]
5 4 [1, 2, 3]
5 5 [1, 2, 3, 4]
  • ๊ฐœ๋…์„ ๋‹ค์‹œ ์žก์•„์•ผ๊ฒ ๋‹ค.
    • ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ 2๊ฐœ๋ฅผ ๋งŒ๋“ค์–ด์„œ
    • order๋ž‘ ๋น„๊ตํ•ด์„œ ๋ฒจํŠธ2์— ๋„ฃ์—ˆ๋‹ค๊ฐ€ ๋บ๋‹ค๊ฐ€ ํ•˜๋Š”๊ฑฐ ์• ๋งคํ•˜๋‹ค.
    • ๊ตฌ๋ƒฅ ๋ฐฐ์—ด ํ•˜๋‚˜๋กœ ์•ˆ๋˜๋‚˜?

 ์˜ค๋” 4,3,1,2,5 

  • ๋ฒจํŠธ 1 ๋ฐฐ์—ด (N ๋งŒํผ ๋งŒ๋“ค๊ธฐ) : 1,2,3,4,5
    • order[0] = 4 ์ฐพ๊ธฐ
      • ์ฐพ์œผ๋ฉด 4๋ฅผ 0์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ณ  ๊ทธ ์œ„์น˜๋ฅผ stack_pos์— ์ €์žฅ
      • 1,2,3,s[0],5
    • ๋‹ค์Œ ๊ฑฐ ์ฒดํฌํ–ˆ๋Š”๋ฐ 5๊ฐ€ ๋” ํฌ๋ฉด belt_pos ์ €์žฅํ•˜๊ณ , stack_pos์—์„œ ๋’ค๋กœ ํ›„์ง„
      • 1,2,3,s[0],b[5]
      • 1,2,s[0],0,b[5] 3์ฐพ์•˜์œผ๋‹ˆ 0์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ณ  stack_pos์— ์ €์žฅ
    • ๋‹ค์Œ๊ฑฐ belt_pos์—์„œ ์ฐพ์•˜๋Š”๋ฐ ์—†์œผ๋ฉด...  belt_pos ์ €์žฅํ•˜๊ณ , stack_pos์—์„œ ๋’ค๋กœ ํ›„์ง„
      • 1,s[2],0,0,b[5]
        • stack_pos๋„ 1์„ ๋ชพ ์ฐพ์•˜์œผ๋‹ˆ ์ข…๋ฃŒ.
    • ์นด์šดํ„ฐ๋กœ ๋ณ€ํ™˜ํ•˜๊ณ , 0์˜ ๊ฐฏ์ˆ˜๋ฅผ ์นด์šดํŠธ. 0์ด ๋‘๊ฐœ, 2๋ฅผ ๋ฆฌํ„ด.

 ์˜ค๋” 5,4,3,2,1 

  • ๋ฒจํŠธ 1 ๋ฐฐ์—ด (N ๋งŒํผ ๋งŒ๋“ค๊ธฐ) : 1,2,3,4,5
    • belt_pos=0. stack_pos = 0, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,2,3,4,5 (5 ๋ชป ์ฐพ์Œ)
    • belt_pos=1. stack_pos = 1, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,2,3,4,5 (5 ๋ชป ์ฐพ์Œ)
    • belt_pos=2. stack_pos = 2, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,2,3,4,5 (5 ๋ชป ์ฐพ์Œ)
    • belt_pos=3. stack_pos = 3, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,2,3,4,5 (5 ๋ชป ์ฐพ์Œ)
    • belt_pos=4. stack_pos = 4, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,2,3,4,5 (5 ์ฐพ์Œ)
    • belt_pos=4. stack_pos = 4, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,2,3,4,0 (4 ๋ชป ์ฐพ์Œ)
    • belt_pos=4. stack_pos = 3, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,2,3,4,0 (4 ์ฐพ์Œ)
    • belt_pos=4. stack_pos = 2, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,2,3,0,0 (3 ๋ชป ์ฐพ์Œ)
    • ..
    • ...

๋งŒ์•ฝ ์Šคํƒ์— ๋„ฃ๊ณ , ๋ฒจํŠธ์—์„œ ๋นผ๊ณ , ์Šคํƒ์— ๋„ฃ๊ณ , ๋ฒจํŠธ์—์„œ ๋นผ๊ณ ๋ฅผ ๋ฐ˜๋ณตํ•˜๋Š” ๊ฒฝ์šฐ๋Š”?

  • ์˜ค๋” : 2,1,4,3,6,5
    • belt_pos=0. stack_pos = 0, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,2,3,4,5,6 (2 ๋ชป ์ฐพ์Œ)
    • belt_pos=1. stack_pos = 1, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,2,3,4,5,6 (2 ์ฐพ์Œ)
    • belt_pos=1. stack_pos = 1, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,0,3,4,5,6 <- 0์œผ๋กœ ๋ณ€๊ฒฝ
    • belt_pos=2. stack_pos = 2, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,0,3,4,5,6 (1 ๋ชป ์ฐพ์Œ)
    • belt_pos=2. stack_pos = 1, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,0,3,4,5,6 (1 ๋ชป ์ฐพ์Œ)
    • belt_pos=2. stack_pos = 0, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 1,0,3,4,5,6 (1 ์ฐพ์Œ)
    • belt_pos=2. stack_pos = 0, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 0,0,3,4,5,6 <- 0์œผ๋กœ ๋ณ€๊ฒฝ
    • belt_pos=2. stack_pos = 2, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 0,0,3,4,5,6 (4 ๋ชป ์ฐพ์Œ)
    • belt_pos=3. stack_pos = 2, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 0,0,3,4,5,6 (4 ์ฐพ์Œ)
    • belt_pos=3. stack_pos = 2, ๋ฒจํŠธ 1 ๋ฐฐ์—ด : 0,0,3,0,5,6 <- 0์œผ๋กœ ๋ณ€๊ฒฝ

์–ด์šฐ... ์ด๊ฒƒ๋„ ๋Š๋ฆด ๊ฒƒ ๊ฐ™๋‹ค.

  • ๋ฒจํŠธ 1์€ ๊ทธ๋ƒฅ for๋ฌธ ๋Œ๋ฆฌ๋ฉด ๋  ๊ฑฐ ๊ฐ™์Œ.
  • ๋ฒจํŠธ 2 ์Šคํƒ์€ ๋ฌด์กฐ๊ฑด ์žˆ์–ด์•ผ ํ•  ๋“ฏ?
  • ํƒ๋ฐฐ์ฐจ๋Š” ํ•„์š”์—†๊ณ ,
  • ํƒ๋ฐฐ๊ธฐ์‚ฌ์˜ ์˜ค๋”๋Š” ์žˆ์–ด์•ผ ํ•จ.

  • ์•„์˜ค ๋จธ๋ฆฌ์•ผ
    • 4,3,1,2,5๋Š” 4,3๋งŒ ์‹ค์„ ์ˆ˜ ์žˆ๊ณ  ๋.
    • 4,3,2,1,5๋Š” 5๊ฐœ ๋‹ค ์‹ค์„ ์ˆ˜ ์žˆ์Œ.
    • 2,1,4,3,5๋„ ๋‹ค ์‹ค์„ ์ˆ˜ ์žˆ๊ณ ,
    • 3,2,1,5,4๋„ ๋‹ค ์‹ค์„ ์ˆ˜ ์žˆ์Œ.
    • 5,1,4,2,3์€? 5๋งŒ ์‹ฃ๊ธฐ ๊ฐ€๋Šฅ.
      • B1 5
      • B2 4,3,2,1
  • ๊ฐ€๋งŒ ๋ณด๋ฉด ์•„๋ฌด๋ฆฌ ๋ณ‘์‹  ๊ฐ™์ด ํ•ด๋„ ๋งจ ์ฒ˜์Œ 1๊ฐœ๋Š” ๋ฌด์กฐ๊ฑด ์‹ค์„ ์ˆ˜ ์žˆ๋‹ค.
    • ๊ทธ ๋งจ ์ฒ˜์Œ์˜ ์ˆซ์ž๊ฐ€ ์ค‘์š”ํ•œ ๊ฒƒ ๊ฐ™์€๋””?
์˜ค๋” 4,3,1,2,5 4,3,2,1,5 2,1,4,3,5 3,2,1,5,4 5,1,4,2,3
๋ฒจํŠธ1 4,5 4,5 2,3,4,5 3,4,5 5
๋ฒจํŠธ2 3,2,1 3,2,1 1 2,1 4,3,2,1
์‹ค์„ ์ˆ˜ ์žˆ๋Š” ์ƒ์ž 2 5 5 5 1
  •  ์•„๋ฌด๋ฆฌ ๋ด๋„ ์•ˆ๋œ๋‹ค. ๊ทธ๋ƒฅ ๋‹ค์‹œ ๋ฌด์ง€์„ฑ์œผ๋กœ ใ…‹ใ…‹ใ…‹
    • ์ž˜ ์•ˆ๋  ๋• ๋ณ€์ˆ˜๋ช…์„ ํ•œ๊ธ€๋กœ ์ ์–ด๋ณด๋ฉด ์ž˜ ํ’€๋ฆฌ๋”๋ผ...? (๋ฏธ์‹ )
    • ์œผ... ์–ด๊ฑฐ์ง€๋กœ ํ•˜๋‹ค๋ณด๋‹ˆ๊นŒ ์ด๊ฒŒ ๋˜๋„ค? ์ผ๋‹จ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋Š” ํ†ต๊ณผ. ์ข€ ๋‹ค๋“ฌ์–ด์•ผ์ง€...
    • ์ผ์š”์ผ ํ•˜๋ฃจ๋ฅผ ์ด๊ฑธ๋กœ ๋‚ ๋ ธ๋„ค? ใ…‹ใ…‹ใ…‹
def solution(order):
    ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋” = 0
    ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ = 1
    ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK = []
    while True:
        ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK.append(๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ)
        print(๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ, ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK)
        while True:
            if ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK[-1] == order[ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋”]:
                print("๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์žˆ์Œ")
                ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋” += 1
                ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK.pop()
                print(๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ, ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK)
            else:
                print("๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์—†์Œ")
                break
            if len(๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK) == 0:
                print("๋ธŒ๋ ˆ์ดํฌ")
                break
        ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ += 1
        if ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ == len(order)+1:
            break
    return len(order) - len(๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK)
    
ํ…Œ์ŠคํŠธ 1
์ž…๋ ฅ๊ฐ’ ใ€‰	[4, 3, 1, 2, 5]
๊ธฐ๋Œ“๊ฐ’ ใ€‰	2
์‹คํ–‰ ๊ฒฐ๊ณผ ใ€‰	ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ•˜์˜€์Šต๋‹ˆ๋‹ค.
์ถœ๋ ฅ ใ€‰	1 [1]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์—†์Œ
2 [1, 2]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์—†์Œ
3 [1, 2, 3]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์—†์Œ
4 [1, 2, 3, 4]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์žˆ์Œ
4 [1, 2, 3]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์žˆ์Œ
4 [1, 2]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์—†์Œ
5 [1, 2, 5]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์—†์Œ

ํ…Œ์ŠคํŠธ 2
์ž…๋ ฅ๊ฐ’ ใ€‰	[5, 4, 3, 2, 1]
๊ธฐ๋Œ“๊ฐ’ ใ€‰	5
์‹คํ–‰ ๊ฒฐ๊ณผ ใ€‰	ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ•˜์˜€์Šต๋‹ˆ๋‹ค.
์ถœ๋ ฅ ใ€‰	1 [1]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์—†์Œ
2 [1, 2]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์—†์Œ
3 [1, 2, 3]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์—†์Œ
4 [1, 2, 3, 4]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์—†์Œ
5 [1, 2, 3, 4, 5]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์žˆ์Œ
5 [1, 2, 3, 4]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์žˆ์Œ
5 [1, 2, 3]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์žˆ์Œ
5 [1, 2]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์žˆ์Œ
5 [1]
๋ณด์กฐ์ปจํ…Œ์ดํ„ฐ๋ฒจํŠธ์— ์žˆ์Œ
5 []
๋ธŒ๋ ˆ์ดํฌ
  • ๋‹ค๋“ฌ์–ด์„œ ์ œ์ถœ!
  • ์†๋„๊ฐ€ ์•„์‰ฝ๊ตฐ์š”.
def solution(order):
    N = len(order)
    ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋” = 0
    ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ = 1
    ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK = []
    while ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ != N+1:
        ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK.append(๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ)
        while len(๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK) != 0:
            if ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK[-1] == order[ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋”]:
                ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋” += 1
                ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK.pop()
            else:
                break
        ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ += 1
    return N - len(๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK)
    
์ •ํ™•์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (32.06ms, 19.2MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (114.48ms, 53.1MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (148.02ms, 66.6MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (102.68ms, 46.5MB)
ํ…Œ์ŠคํŠธ 5 ใ€‰	ํ†ต๊ณผ (232.50ms, 94.6MB)
ํ…Œ์ŠคํŠธ 6 ใ€‰	ํ†ต๊ณผ (98.65ms, 19.5MB)
ํ…Œ์ŠคํŠธ 7 ใ€‰	ํ†ต๊ณผ (295.80ms, 46.9MB)
ํ…Œ์ŠคํŠธ 8 ใ€‰	ํ†ต๊ณผ (28.14ms, 12.1MB)
ํ…Œ์ŠคํŠธ 9 ใ€‰	ํ†ต๊ณผ (218.01ms, 35.3MB)
ํ…Œ์ŠคํŠธ 10 ใ€‰	ํ†ต๊ณผ (360.32ms, 53.1MB)
  • ๊ณ ์ˆ˜์˜ ํ’€์ด๋ฅผ ๋ณด๋‹ˆ
    • while ๋ฌธ์ด ์•„๋‹ˆ๋ผ for๋ฌธ์œผ๋กœ ์‹œ์ž‘ํ•ด๋„ ๋˜๋„ค์š”.
    • ๊ทธ๋ฆฌ๊ณ  "N - len(๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK)"์„ ๋ฆฌํ„ดํ•  ๊ฒŒ ์•„๋‹ˆ๋ผ "ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋”"์„ ๋ฆฌํ„ดํ•ด๋„ ๋˜๋Š”๊ตฐ์š”.
def solution(order):
    List=[]
    cnt=0
    for i in range(1, len(order)+1):
        List.append(i)
        while order[cnt]==List[-1]:
            List.pop()
            cnt+=1
            if len(List)==0:
                break

    return cnt
    
์ •ํ™•์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (13.80ms, 19.1MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (61.73ms, 53MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (81.85ms, 66.4MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (54.79ms, 46.3MB)
ํ…Œ์ŠคํŠธ 5 ใ€‰	ํ†ต๊ณผ (121.31ms, 94.5MB)
ํ…Œ์ŠคํŠธ 6 ใ€‰	ํ†ต๊ณผ (54.43ms, 19.3MB)
ํ…Œ์ŠคํŠธ 7 ใ€‰	ํ†ต๊ณผ (213.81ms, 46.4MB)
ํ…Œ์ŠคํŠธ 8 ใ€‰	ํ†ต๊ณผ (11.66ms, 11.8MB)
ํ…Œ์ŠคํŠธ 9 ใ€‰	ํ†ต๊ณผ (147.47ms, 35MB)
ํ…Œ์ŠคํŠธ 10 ใ€‰	ํ†ต๊ณผ (255.71ms, 53.1MB)
  • ์ฒจ๋ถ€ํ„ฐ ์ด๋ ‡๊ฒŒ ์งค ์ˆ˜ ์žˆ์—ˆ์œผ๋ฉด ์–ผ๋งˆ๋‚˜ ์ข‹์•˜์„๊นŒ? ์ง„์งœ ๊น”๋”ํ•˜๋„ค...
    • ๊ทผ๋ฐ while ๋ฌธ์— ์กฐ๊ฑด 2๊ฐœ ๊ฑธ๋ฉด ๋Š๋ ค์ง€๋‚˜๋ด„...
def solution(order):
    ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋” = 0
    ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK = []
    for ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ in range(1, len(order)+1):
        ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK.append(๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ)
        while len(๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK) != 0 and ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK[-1] == order[ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋”]:
            ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋” += 1
            ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK.pop()
    return ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋”
    
์ •ํ™•์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (20.91ms, 19.3MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (105.58ms, 53.3MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (129.87ms, 66.6MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (106.39ms, 46.4MB)
ํ…Œ์ŠคํŠธ 5 ใ€‰	ํ†ต๊ณผ (182.48ms, 94.7MB)
ํ…Œ์ŠคํŠธ 6 ใ€‰	ํ†ต๊ณผ (66.75ms, 19.5MB)
ํ…Œ์ŠคํŠธ 7 ใ€‰	ํ†ต๊ณผ (264.94ms, 46.9MB)
ํ…Œ์ŠคํŠธ 8 ใ€‰	ํ†ต๊ณผ (14.32ms, 12.1MB)
ํ…Œ์ŠคํŠธ 9 ใ€‰	ํ†ต๊ณผ (189.78ms, 35.4MB)
ํ…Œ์ŠคํŠธ 10 ใ€‰	ํ†ต๊ณผ (317.26ms, 53.2MB)
  • ์ง„์งœ๋„ค. while ๋ฌธ์ œ ์กฐ๊ฑด ์—ฌ๋Ÿฌ ๊ฐœ ๋‹ฌ๋ฉด ๋Š๋ ค์ง€๋„ค...? ์‹ ๊ธฐํ•œ๊ฑฐ ์•Œ์•˜๋‹ค.
def solution(order):
    ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋” = 0
    ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK = []
    for ๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ in range(1, len(order)+1):
        ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK.append(๋ฉ”์ธ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธ)
        while ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK[-1] == order[ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋”]:
            ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋” += 1
            ๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK.pop()
            if len(๋ณด์กฐ์ปจํ…Œ์ด๋„ˆ๋ฒจํŠธSTACK) == 0:
                break
    return ํƒ๋ฐฐ๊ธฐ์‚ฌ๋‹˜์˜์˜ค๋”

์ •ํ™•์„ฑ  ํ…Œ์ŠคํŠธ
ํ…Œ์ŠคํŠธ 1 ใ€‰	ํ†ต๊ณผ (16.18ms, 19.3MB)
ํ…Œ์ŠคํŠธ 2 ใ€‰	ํ†ต๊ณผ (61.84ms, 52.9MB)
ํ…Œ์ŠคํŠธ 3 ใ€‰	ํ†ต๊ณผ (89.09ms, 66.6MB)
ํ…Œ์ŠคํŠธ 4 ใ€‰	ํ†ต๊ณผ (54.29ms, 46.3MB)
ํ…Œ์ŠคํŠธ 5 ใ€‰	ํ†ต๊ณผ (122.20ms, 94.7MB)
ํ…Œ์ŠคํŠธ 6 ใ€‰	ํ†ต๊ณผ (55.00ms, 19.3MB)
ํ…Œ์ŠคํŠธ 7 ใ€‰	ํ†ต๊ณผ (218.76ms, 46.8MB)
ํ…Œ์ŠคํŠธ 8 ใ€‰	ํ†ต๊ณผ (11.55ms, 12MB)
ํ…Œ์ŠคํŠธ 9 ใ€‰	ํ†ต๊ณผ (169.14ms, 35.3MB)
ํ…Œ์ŠคํŠธ 10 ใ€‰	ํ†ต๊ณผ (252.35ms, 53.2MB)
728x90
๋ฐ˜์‘ํ˜•