반응형
문제
https://www.acmicpc.net/problem/11659
풀이
이 문제는 누적 합을 구해서 쉽게 풀이할 수 있습니다.
[5, 4, 3, 2, 1] 배열의 누적합을 구한다면
[5, 9, 12, 14, 15] 가 될 것입니다.
2 ~ 4번까지의 합은 4 + 3 + 2 로 9가 됩니다.
누적합 배열을 보시면 4번째 요소가 의미하는 것이 1 ~ 4까지의 합이고,
1번째 요소가 의미하는 것은 0 ~ 1까지의 합입니다.
4번째 요소 - 1번째 요소 = 1 ~ 4까지의 합 - 0 ~ 1까지의 합 = 즉, 2 ~ 4까지의 합을 구할 수 있습니다.
문제를 풀이할 때,
편의성을 위해 배열에 0번째에 0을 삽입시켜주어서 계산하였습니다.
소스코드
후기
누적 합 알고리즘의 기본적인 문제였습니다.
반응형
'PS > 백준' 카테고리의 다른 글
[BOJ] 백준 16139 인간-컴퓨터 상호작용 (Swift) (0) | 2023.04.07 |
---|---|
[BOJ] 백준 2559 수열 (Swift) (0) | 2023.04.07 |
[BOJ] 백준 12865 평범한 배낭 (Swift) (0) | 2023.04.07 |
[BOJ] 백준 9251 LCS (Swift) (0) | 2023.04.07 |
[BOJ] 백준 2565 전깃줄 (Swift) (0) | 2023.04.06 |