[SWEA] 1206. View

김휴지 ㅣ 2023. 5. 17. 20:23

https://swexpertacademy.com/main/code/problem/problemDetail.do

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com


접근 방법

앞뒤 2칸이 비었을 경우, 현재 층에 총 4칸 중 가장 높은 층을 빼서 카운팅한다.

이후 앞의 2칸은 탐색할 필요가 없어 앞당겨 줬다.

 

소스 코드

import java.util.*;
import java.lang.Math;

class Solution
{
	public static void main(String args[]) throws Exception
	{
		Scanner sc = new Scanner(System.in);
 		
		int T = 10;
		for(int test_case = 1; test_case <= T; test_case++)
		{
            int cnt = 0;
            int N = sc.nextInt();
            int[] b = new int[N];
            for(int i=0; i<N; i++)
                b[i] = sc.nextInt();
            
            for(int i=2; i<N-2; i++) {           
                if (b[i] > b[i-2] && b[i] > b[i-1] && b[i] > b[i+1] && b[i] > b[i+2]) {
                	cnt += (b[i] - Math.max( Math.max(b[i-2], b[i-1]), Math.max(b[i+1], b[i+2]) ) );
                    i += 2;
                }
            }
            System.out.println("#" + test_case + " " + cnt);
		}
	}
}

'코테 > 자바' 카테고리의 다른 글

[SWEA] 1244. 최대 상금  (0) 2023.05.18
[SWEA] 2814. 최장 경로  (0) 2023.05.17
[SWEA] 1209. Sum  (0) 2023.05.17
[SWEA] 1240. 단순 2진 암호코드  (0) 2023.05.17
[SWEA] 1208. Flatten  (0) 2023.05.17