ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • boj)6198 - 옥상 정원 꾸미기
    PS/boj 2020. 10. 13. 12:57
    import java.io.*;
    import java.util.*;
    
    public class boj_6198 {
        static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        static Stack<Integer> stack = new Stack<>();
    
        public static void main(String[] args) throws IOException {
            long ans = 0;
            int N = Integer.parseInt(br.readLine());
    
            for (int i = 0; i < N; i++) { 
                int height = Integer.parseInt(br.readLine());
    
                while (!stack.isEmpty()) {
                    if (stack.peek() <= height) { 
                        stack.pop();
                    } else { 
                        ans += stack.size();
                        break;
                    }
                }
                stack.push(height);
            }
            System.out.println(ans);
        }
    }
    
    

     

    - 혼자 풀기 실패후 다른풀이 찾아봄

     

    - 생각의 관점을 내가 앞에 몇 개의 빌딩을 볼 수 있는가 ? -> 나를 뒤에 있는 빌딩 몇개가 볼 수 있는가 ? 

       로 바꿔보니까 풀이가 생각이 되는거 같음

    - 각 빌딩들에 대해서 나를 몇 개의 빌딩이 볼 수 있는가 ? 로 검사

     

    'PS > boj' 카테고리의 다른 글

    boj)2504 - 괄호의 값  (0) 2020.10.14
    boj)4949 - 균형잡힌 세상  (0) 2020.10.13
    boj)2164 - 카드2  (0) 2020.10.12
    boj)2493 - 탑  (0) 2020.10.12
    boj)10773 - 제로  (0) 2020.10.12
킹수빈닷컴