SSONG Cloud

[백준] 1292 쉽게 푸는 문제 본문

Algorithm/백준

[백준] 1292 쉽게 푸는 문제

SSONGMI 2021. 4. 10. 22:45
반응형

문제 출처: www.acmicpc.net/problem/1292

 

1292번: 쉽게 푸는 문제

첫째 줄에 구간의 시작과 끝을 나타내는 정수 A, B(1 ≤ A ≤ B ≤ 1,000)가 주어진다. 즉, 수열에서 A번째 숫자부터 B번째 숫자까지 합을 구하면 된다.

www.acmicpc.net

: 1을 한번, 2를 두번, 3을 세번 이런식으로 수열을 만들고 주어진 일정 구간에서의 합을 구해야 한다.

: 미리 수열을 만든 후 입력을 받아 해당 구간에서의 합을 구할 수 있도록 한다.

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;

public class Main {
	static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
	static StringBuilder sb =new StringBuilder();
	static StringTokenizer st;
	public static void main(String[] args) throws IOException {
		int[] list = new int[1001];
		int idx = 0;
		int i = 1;
		out :while(true) {
			for(int j = 0; j < i; j++) {
				list[idx++] = i;
				if(idx > 1000) break out;
			}
			i++;
		}
//		System.out.println(Arrays.toString(list));
		st = new StringTokenizer(br.readLine());
		int start = Integer.parseInt(st.nextToken())-1;
		int end = Integer.parseInt(st.nextToken())-1;
		int res = 0;
		for(int k = start; k <= end; k++) {
			res += list[k];
		}
		System.out.println(res);
	}
	
	
}
반응형

'Algorithm > 백준' 카테고리의 다른 글

[백준] 1965 상자넣기  (0) 2021.04.14
[백준] 17471 게리맨더링  (0) 2021.04.14
[백준] 11559 Puyo Puyo  (0) 2021.04.10
[백준] 3055 탈출  (0) 2021.04.09
[백준] 2583 영역구하기  (0) 2021.04.09
Comments