[java] SWEA - View

세상을 바꾸는 개발자·2023년 5월 11일
0

[문제링크 - SWEA - View] https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV134DPqAA8CFAYh

  • 백준, 프로그래머스는 많이 풀어봤지만, SWEA는 익숙하지 않아서 제출하는데에 어려움이 있었다.
  • 입력값을 파일형식으로 제공하는데, 제출할 때는 input할 수 있도록 수정해야한다.
import java.io.*;
import java.util.StringTokenizer;

public class Solution {
    public static void main(String[] args) throws IOException {
        //BufferedReader br = new BufferedReader(new FileReader("input1.txt"));
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
        StringTokenizer st;

        for(int t=0; t<10; t++){
            int n = Integer.parseInt(br.readLine());
            int[] arr = new int[n];
            st = new StringTokenizer(br.readLine());
            for(int i=0; i<n; i++){
                arr[i] = Integer.parseInt(st.nextToken());
            }

            int answer = 0;
            for(int i=2; i<n-2; i++){
                int max = Math.max(arr[i - 2], Math.max(arr[i - 1], Math.max(arr[i + 1], arr[i + 2])));
                if (arr[i] - max > 0) // 좌 우 건물 높이의 최댓값보다 현재 건물의 높이가 높으면
                    answer += arr[i] - max;
            }
            sb.append("#" + (t+1) + " " + answer + "\n");
        }
        System.out.println(sb);
    }
}
profile
초심 잃지 않기

0개의 댓글

관련 채용 정보