728x90
https://www.acmicpc.net/problem/17608
메모리: 25,904KB , 시간: 224 ms
사용 알고리즘: 자료 구조, 구현, 스택
728x90
ArrayDeque
라는 자료구조를 알게 되어 Stack
대신에 사용해보았다.
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayDeque;
public class Main {
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
// ArrayDeque를 stack으로 사용
ArrayDeque<Integer> stack = new ArrayDeque<>();
// 값을 다 넣어줌
for (int i = 0; i < N; i++) {
stack.add(Integer.parseInt(br.readLine()));
}
int result = 0;
int last = 0; // 마지막에 보이는 막대기 크기
int tmp;
while(!stack.isEmpty()) {
tmp = stack.pollLast();
// 더 큰 막대기를 발견했다면, 이 막대기는 보임
if(last < tmp) {
result++;
last = tmp;
}
}
System.out.println(result);
}
}
728x90
'Problem Solving > BOJ' 카테고리의 다른 글
[백준, BOJ 1620] 나는야 포켓몬 마스터 이다솜 (java) (2) | 2024.09.06 |
---|---|
[백준, BOJ 1764] 듣보잡 (java) (0) | 2024.09.06 |
[백준, BOJ 2075] N번째 큰 수 (java) (0) | 2024.09.03 |
[백준, BOJ 2805] 나무 자르기 (java) (0) | 2024.09.03 |
[백준, BOJ 12605] 단어순서 뒤집기 (java) (0) | 2024.09.01 |