본문 바로가기

Algorithm/Implementation

(C++) - LeetCode (easy) 1837. Sum of Digits in Base K

반응형

https://leetcode.com/problems/sum-of-digits-in-base-k/description/

📕 풀이방법

📔 입력 및 초기화

1. k진수로 변환된 뒤집어진 문자열 bin을 선언해 줍니다.2. 정답 변수 sum을 선언 후 0으로 초기화해줍니다.

📔 풀이과정

1. n이 양수인 동안 다음을 진행합니다.

1-1. n을 k로 나눈 나머지를 문자열로 변환해 bin 뒤에 붙여줍니다.

1-2. n을 k로 나눠줍니다.

 

2. bin의 원소를 순회하며 sum에 bin을 숫자로 바꾼 값을 더해줍니다.

📔 정답 출력 | 반환

sum을 반환합니다.


📕 Code

📔 C++

class Solution {
public:
    int sumBase(int n, int k) {
        string bin = "";
        while (n) {
            bin += to_string(n % k);
            n /= k;
        }
        int sum = 0;
        for(auto b : bin) {
            sum += b - '0';
        }
        return sum;
    }
};

*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.