별의 공부 블로그 🧑🏻‍💻
728x90
728x170

문제16 : $2^{1000}$ 의 각 자릿수를 모두 더하면?


문제


$2^{15} = 32768$ 의 각 자릿수를 더하면 3 + 2 + 7 + 6 + 8 = 26 입니다.

$2^{1000}$ 의 각 자릿수를 모두 더하면 얼마입니까?


문제 해결 방법


  • 2^{1000} 은 너무나 큰 수이기에 C++ 의 정수형 변수에 대입할 수 없다. 그래서 string 자료형을 이용하여 문제를 해결하였다.
  • 참고
    • char형 숫자 -> int형 숫자 : char형 숫자 - '0'
    • int형 숫자 -> char형 숫자 : int형 숫자 + '0'

소스 코드



정답


 1366


심화 공부


숫자의 거듭제곱 계산(Computing Powers of a Number)


 n번 곱한 수를 x^n이라 한다. 현재의 거듭제곱 표기법은 데카르트 가 만들었다. x가 실수, n이 정수일 때, x^n계산은 재귀적으로 다음과 같이 한다.

  1. n이 0이면, x의 값이 무엇이든 간에 x^n = 1이다.
  2. n이 양수면,
    1. 짝수면, x^n = x^{n/2} \cdot x^{n/2}
    2. 홀수면, x^n = x^{n-1} \cdot x
  3. n 이 음수면, x^n = \frac {1} {x^{-n}}





728x90
그리드형(광고전용)
⚠️AdBlock이 감지되었습니다. 원할한 페이지 표시를 위해 AdBlock을 꺼주세요.⚠️


📖 Contents 📖