More actions
imported>Unknown No edit summary |
(Repair batch-0006 pages from live compare) |
||
| Line 14: | Line 14: | ||
---- | ---- | ||
[[자리수알아내기]] | [[자리수알아내기]] | ||
Latest revision as of 01:08, 27 March 2026
1번
한 번 나눌 때마다 한 자리씩 줄어듭니다.
numDigit 0 base = 0 numDigit n base = 1 + numDigit (div n base) base
2번
수학을 약간 이용해서 자리수를 구합니다. 로그를 취하면 자리수가 나오죠?
numDigit n base = ceiling (logBase base n) + 1
평가
절차형 프로그래밍을 많이 하다보면 1번으로 생각하기 쉽습니다. 반복적으로 작업하는 흐름이 머리 속에 떠오르지 않나요?ㅋㅋ
속도는 2번이 더 느립니다. 로그를 구하는 방법 때문일 것으로 추측해봅니다. 게다가 2번은 300자리 정도까지만 제대로 동작하는군요. :(