# 구간 합
- 구간 합 : i ~ j 인덱스 값들의 합 => 특정 구간 인덱스의 합
- 부분 합 : 0 ~ k 인덱스 값들의 합 => 처음부터 특정 인덱스까지의 합
- 시간 복잡도
- 반복문을 통해 i ~ j 인덱스 값들의 합을 구하는 경우) O(N) (i=0, j=N)
- 시간 복잡도를 줄이기 위해서는 합 배열을 이용해야 함 => O(1)으로 감소
# 합 배열

합 배열 S, 배열 A
S[i] = A[0] + A[1] + A[2] + ... + A[i-1] + A[i]
- 합 배열 : 기존의 배열을 전처리한 배열합 배열 만드는 공식
S[i] = S[i-1] + A[i]
- 합 배열을 이용해 구간 합 구하는 공식
S[j] - S[i-1]
# 관련 문제
[JAVA] 백준 q11659 - 구간 합 구하기 4
11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을
monicajo074.tistory.com
# 참고 글
- Do it 알고리즘 코딩테스트 자바편
'알고리즘 > 개념' 카테고리의 다른 글
[개념] 위상 정렬(Topological Sort) (0) | 2024.02.20 |
---|---|
[개념] 최소 공통 조상 (LCA, Lowest Common Ancestor) (0) | 2023.08.02 |
[개념] 플로이드-워셜 알고리즘 (Floyd-Warshall Algorithm) (2) | 2023.08.01 |
# 구간 합
- 구간 합 : i ~ j 인덱스 값들의 합 => 특정 구간 인덱스의 합
- 부분 합 : 0 ~ k 인덱스 값들의 합 => 처음부터 특정 인덱스까지의 합
- 시간 복잡도
- 반복문을 통해 i ~ j 인덱스 값들의 합을 구하는 경우) O(N) (i=0, j=N)
- 시간 복잡도를 줄이기 위해서는 합 배열을 이용해야 함 => O(1)으로 감소
# 합 배열

합 배열 S, 배열 A
S[i] = A[0] + A[1] + A[2] + ... + A[i-1] + A[i]
- 합 배열 : 기존의 배열을 전처리한 배열합 배열 만드는 공식
S[i] = S[i-1] + A[i]
- 합 배열을 이용해 구간 합 구하는 공식
S[j] - S[i-1]
# 관련 문제
[JAVA] 백준 q11659 - 구간 합 구하기 4
11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을
monicajo074.tistory.com
# 참고 글
- Do it 알고리즘 코딩테스트 자바편
'알고리즘 > 개념' 카테고리의 다른 글
[개념] 위상 정렬(Topological Sort) (0) | 2024.02.20 |
---|---|
[개념] 최소 공통 조상 (LCA, Lowest Common Ancestor) (0) | 2023.08.02 |
[개념] 플로이드-워셜 알고리즘 (Floyd-Warshall Algorithm) (2) | 2023.08.01 |