알고리즘

백준 2232번 지뢰 (JAVA)

박카스마시며코딩 2023. 8. 23. 22:19

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

 

2232번: 지뢰

일직선상에 N개의 지뢰가 같은 간격으로 매설되어 있다. 각각의 지뢰는 충격 강도 Pi가 있어서, Pi를 초과하는 힘을 가하면 Pi만큼의 힘을 발휘하며 터지게 된다. 어떤 지뢰가 터지게 되면, 그 지

www.acmicpc.net

 

저는 구현을 통해 문제를 해결하였습니다.

충격 강도가 높은 곳에서 터뜨리면 좌,우로 연쇄적으로 터지기 때문에 좌,우보다 높은 것을 터뜨리도록 구현하였습니다.

 

package BOJ.etc;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.function.Function;

public class BOJ_2232 {

    public static void main(String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        Function<String,Integer> stoi = Integer::parseInt;
        int n = stoi.apply(br.readLine());
        int[] number = new int[n+1];
        for(int i = 1 ; i <= n ; i++){
            number[i] = stoi.apply(br.readLine());
        }
        if(n == 1){
            System.out.println(1);
            return ;
        }
        if(number[1] >= number[2]){
            System.out.println(1);
        }
        for(int i = 2 ; i <= n-1 ; i++){
            if(number[i-1] <= number[i] && number[i] >= number[i+1]){
                System.out.println(i);
            }
        }
        if(number[n] >= number[n-1]){
            System.out.println(n);
        }
    }
}