본문 바로가기

OJ

[BOJ] 2485 가로수 (JAVA)

https://www.acmicpc.net/problem/2485

 

2485번: 가로수

첫째 줄에는 이미 심어져 있는 가로수의 수를 나타내는 하나의 정수 N이 주어진다(3 ≤ N ≤ 100,000). 둘째 줄부터 N개의 줄에는 각 줄마다 심어져 있는 가로수의 위치가 양의 정수로 주어지며, 가

www.acmicpc.net

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Main {
	
    static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    static int N, result, min = 1_000_000_000;
    static int[] input, data;

    public static void main(String[] args) throws Exception {

        N = Integer.parseInt(br.readLine());
        input = new int[N];
        data = new int[N];
        input[0] = Integer.parseInt(br.readLine());
        for (int i = 1; i < N; i++) {
            input[i] = Integer.parseInt(br.readLine());
            data[i] = input[i] - input[i - 1];
        } // end of input

        for (int i = 2; i < N; i++) {
            min = Math.min(min, euclidean(data[i], data[i - 1]));
        }

        for (int i = 1; i < N; i++) {
            result += (data[i] - 1) / min;
        }

        System.out.print(result);

    }

    static int euclidean(int a, int b) {
        int r = a % b;
        if (r == 0) return b;
        return euclidean(b, r);
    }
	
}

'OJ' 카테고리의 다른 글

[BOJ] 9084 동전 (JAVA)  (0) 2023.04.24
[BOJ] 10093 숫자 (JAVA)  (0) 2023.04.23
[BOJ] 1780 종이의 개수 (JAVA)  (0) 2023.04.21
[BOJ] 19699 소-난다! (JAVA)  (0) 2023.04.20
[BOJ] 27724 팝핀 소다 (JAVA)  (1) 2023.04.19