Contents

[Codility] Lesson5. PrefixSums-CountDiv C언어 풀이

   Jun 11, 2020     0 min read     - Comments

Lessons5. Prefix Sums(구간의 합)

 N개의 숫자가 있다 가정할 때, L부터 R까지의 합을 구해야 할 때가 있다. 그럴때 Prefix Sums공식으로 쉽게 풀어 갈 수 있다.

예시
NL + NL+1 + … + NR-1 + NR

  • N1 부터 NR 까지의 합이 PR이라고 한다면, L 부터 R 구간의 합은 다음과 같다.
    $PR - P(L-1)$

1. 문제

A와 B 사이에 있는 K의 배수를 구하는 문제이다.

예시   
A = 6, B = 11 그리고 K = 2 일 떄,   
[6, 8, 10]을 반환해야 한다.

2. 정답

첫번째 - 100점

int solution(int A, int B, int K) {
    if(A%K == 0)
        return B/K - A/K+1;
    return B/K - A/K;
}

B까지의 K배수 - A까지의 K배수를 해주었다. 만약 A가 K의 배수에 포함이 된다면 1을 더해주어야 한다.