[ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€] Lv2. λ‹€μŒ 큰 숫자

2022. 10. 12. 11:43γ†μ½”λ”©ν…ŒμŠ€νŠΈ μ—°μŠ΅/ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€_2022

728x90

 

문제 μ„€λͺ…

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

  • 쑰건 1. n의 λ‹€μŒ 큰 μˆ«μžλŠ” n보닀 큰 μžμ—°μˆ˜ μž…λ‹ˆλ‹€.
  • 쑰건 2. n의 λ‹€μŒ 큰 μˆ«μžμ™€ n은 2μ§„μˆ˜λ‘œ λ³€ν™˜ν–ˆμ„ λ•Œ 1의 κ°―μˆ˜κ°€ κ°™μŠ΅λ‹ˆλ‹€.
  • 쑰건 3. n의 λ‹€μŒ 큰 μˆ«μžλŠ” 쑰건 1, 2λ₯Ό λ§Œμ‘±ν•˜λŠ” 수 쀑 κ°€μž₯ μž‘μ€ 수 μž…λ‹ˆλ‹€.

예λ₯Ό λ“€μ–΄μ„œ 78(1001110)의 λ‹€μŒ 큰 μˆ«μžλŠ” 83(1010011)μž…λ‹ˆλ‹€.

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

 

μ œν•œ 사항
  • n은 1,000,000 μ΄ν•˜μ˜ μžμ—°μˆ˜ μž…λ‹ˆλ‹€.

 

μž…μΆœλ ₯ 예
n                                                                                               result
78 83
15 23
 
μž…μΆœλ ₯ 예 μ„€λͺ…

μž…μΆœλ ₯ 예#1
문제 μ˜ˆμ‹œμ™€ κ°™μŠ΅λ‹ˆλ‹€.

μž…μΆœλ ₯ 예#2
15(1111)의 λ‹€μŒ 큰 μˆ«μžλŠ” 23(10111)μž…λ‹ˆλ‹€.

 

 

λ‚˜μ˜ 풀이

κ·Έλƒ₯ 주어진 문제 κ·ΈλŒ€λ‘œ ν‘Ό 방법이닀. 

주어진 n을 2μ§„μˆ˜λ‘œ λ³€ν™˜ν•˜κ³  κ±°κΈ°μ„œ 0을 μ œκ±°ν•œ 길이λ₯Ό μš°μ„  κ΅¬ν•œλ‹€μŒ 

n의 값을 ν•˜λ‚˜μ”© μ¦κ°€ν•˜λ©΄μ„œ 0을 μ œκ±°ν•œ 길이가 같은 값을 κ΅¬ν–ˆλ‹€. 

 

 

λ‹€λ₯Έ μ‚¬λžŒ 풀이

였..! bitcount μ§„μ§œ 배우고 κ°„λ‹€.. 

bitCountμ•Œλ©΄ ꡳ이 2μ§„μˆ˜λ‘œ λ³€ν™˜ν•˜κ³  0 μ œκ±°ν•˜κ³  이런건 μ•ˆν•΄λ„ λ˜λ‹ˆκΉŒ.!!!

μ˜€λŠ˜λ„ μƒˆλ‘œμš΄κ±° μ•Œμ•„κ°„λ‹€ γ…Žγ…Žγ…Ž 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90