728x90
💙합 배열 만드는 공식
배열 A가 있고 합 배열 S인 경우 > S[i] = S[i-1] + A[i]
💙구간 합 구하는 공식
i에서 j까지 구간 합 > S[j] - S[i-1]
[수도코드]
수의 개수 N, 합을 구해야 하는 횟수 M 저장
for(N만큼 반복){
합 배열 생성 S[i] = S[i-1] + A[i]
}
for(M만큼 반복){
범위 입력받기
구간 합 출력 S[j] - S[i-1]
}
import java.util.*; // StringTokenizer 사용하기 위해
import java.io.*; // BufferedReader, InputStreamReader 사용하기 위해
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int n = Integer.parseInt(st.nextToken());
int m = Integer.parseInt(st.nextToken());
long[] s = new long[n+1];
st = new StringTokenizer(br.readLine());
for(int i = 1; i <= n; i++){
s[i] = s[i-1] + Integer.parseInt(st.nextToken());
}
for(int k = 1; k <= m; k++){
st = new StringTokenizer(br.readLine());
int i = Integer.parseInt(st.nextToken());
int j = Integer.parseInt(st.nextToken());
System.out.println(s[j] - s[i-1]);
}
}
}
*배열 범위 주의하기
[JAVA] BufferedReader 와 Bufferedwriter 사용법
BufferedReader :Scanner와 유사. Bufferedwriter :System.out.println();과 유사 둘은 모두 기존에 ...
blog.naver.com
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준 10986] Java 나머지 (0) | 2025.01.10 |
---|---|
[백준 11660] Java 구간 합 구하기 5 / 2차원 구간 합 배열 (0) | 2025.01.10 |
[백준 1546] Java 평균 / Java로 코딩테스트하기 (0) | 2025.01.09 |
[백준 9613] C++ - GCD 최대공약수 구하기 (4) | 2024.07.22 |
🟡[백준 2581] C++ - 소수 구하기 (2) | 2024.07.22 |