λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
κ°œμΈκ³΅λΆ€/Algorithm

[Level 2] λ‹€μŒ 큰 숫자

by πŸ‡λ°•λ΄‰λ΄‰πŸ‡ 2021. 5. 22.

 

 

 

Algorithm

-  λ‹€μŒ 큰 숫자 -

 


 

문제

μžμ—°μˆ˜ n이 μ£Όμ–΄μ‘Œμ„ λ•Œ, n의 λ‹€μŒ 큰 μˆ«μžλŠ” λ‹€μŒκ³Ό 같이 μ •μ˜ ν•©λ‹ˆλ‹€.

 

- 쑰건 1. n의 λ‹€μŒ 큰 μˆ«μžλŠ” n보닀 큰 μžμ—°μˆ˜ μž…λ‹ˆλ‹€.

- 쑰건 2. n의 λ‹€μŒ 큰 μˆ«μžμ™€ n은 2μ§„μˆ˜λ‘œ λ³€ν™˜ν–ˆμ„ λ•Œ 1의 κ°―μˆ˜κ°€ κ°™μŠ΅λ‹ˆλ‹€.

- 쑰건 3. n의 λ‹€μŒ 큰 μˆ«μžλŠ” 쑰건 1, 2λ₯Ό λ§Œμ‘±ν•˜λŠ” 수 쀑 κ°€μž₯ μž‘μ€ 수 μž…λ‹ˆλ‹€.

 

μžμ—°μˆ˜ n이 λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§ˆ λ•Œ, n의 λ‹€μŒ 큰 숫자λ₯Ό λ¦¬ν„΄ν•˜λŠ” ν•¨μˆ˜λ₯Ό μ™„μ„±ν•΄μ£Όμ„Έμš”.

 

μž…μΆœλ ₯ μ˜ˆμ‹œ

n result
78 83
15 23

 

문제 ν’€κΈ°

 

이번 λ¬Έμ œλŠ” nλ³΄λ‹€λŠ” 크고 2μ§„μˆ˜λ‘œ λ°”κΏ¨μ„λ•Œ μ΄μ§„μˆ˜λ‘œ λ°”κΎΌ n의 1의 κ°œμˆ˜μ™€ 같은 수λ₯Ό λ¦¬ν„΄ν•˜λŠ” 문제둜 μ›λž˜λŠ” λ‚΄κ°€ μž„μ˜λ‘œ μ΄μ§„μˆ˜λ‘œ λ°”κΎΌ 값에 1을 λ„£μ–΄μ„œ 10μ§„μˆ˜λ‘œ λ°”κΏ”μ„œ 리턴을 ν• κΉŒ ν–ˆλŠ”λ° μƒκ°ν•΄λ³΄λ‹ˆ λ‚΄κ°€ μž„μ˜λ‘œ λ„£μœΌλ©΄ 쑰건3에 λ§Œμ‘±ν•œλ‹€λŠ” 보μž₯이 μ—†κΈ° λ•Œλ¬Έμ— 쑰금 였래 걸릴지라도 μ•ˆμ „ν•˜κ²Œ while문을 μ‚¬μš©ν•΄μ„œ 문제λ₯Ό ν•΄κ²°ν•˜κΈ°λ‘œ ν•˜μ˜€λ‹€.

 

λ³€μˆ˜ resultμ•ˆμ— 일단 λ§€κ°œλ³€μˆ˜ n을 λ„£μ–΄μ„œ μ΄ˆκΈ°κ°’μ„ μ„€μ •ν•΄μ£Όκ³  whileλ¬Έ μ•ˆμ—μ„œ result값을 +1 ν•΄μ€€λ‹€μŒμ— result값이 λ§€κ°œλ³€μˆ˜ n을 μ΄μ§„μˆ˜λ‘œ λ°”κΏ¨μ„λ•Œμ— 1의 κ°œμˆ˜μ™€ μΌμΉ˜ν•˜λŠ”μ§€ 쑰건문을 넣은 λ‹€μŒμ— 쑰건이 μ„±λ¦½λ˜μ—ˆμ„ λ•Œ 값을 λ¦¬ν„΄ν•˜λ„λ‘ 문제λ₯Ό ν•΄κ²°ν•΄ μ£Όμ—ˆλ‹€.

 

 

λ°˜μ‘ν˜•

λŒ“κΈ€