자바 백준 28014번
브론즈 3
https://www.acmicpc.net/problem/28014
문제 보기
분류: 그리디 알고리즘
문제 풀기
모든 첨탑의 높이를 StringTokenizer와 BufferdReader를 이용하여 array에 입력받는다.
index = 1 부터 시작하여 이전 index의 value가 현재 index의 value보다 작거나 같으면 카운트를 올린다. 이때, 첫 한 번은 무조건 넘겨야 하기 때문에 count 초기값은 1로 시작한다.
코드 보기
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
// BufferedReader를 사용하여 입력을 받을 수 있도록 설정
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 숫자의 개수 N을 입력 받음
int N = Integer.parseInt(br.readLine());
// 첨탑의 높이를 저장할 배열 heights 선언
int[] heights = new int[N];
// 두 번째 줄에서 공백으로 구분된 숫자들을 읽어서 배열에 저장
StringTokenizer st = new StringTokenizer(br.readLine());
for (int i = 0; i < N; i++) {
heights[i] = Integer.parseInt(st.nextToken());
}
// 첨탑의 높이를 비교하면서 앞의 수가 뒤의 수보다 작거나 같은 경우 카운트를 증가
int count = 1; // 초기 카운트를 1로 설정하여 첫 번째 첨탑은 항상 포함
for (int i = 1; i < N; i++) {
if (heights[i - 1] <= heights[i]) {
count++;
}
}
// 결과를 출력
System.out.println(count);
}
}
'공부하기 > 백준' 카테고리의 다른 글
[Java] 백준 풀기 20115 - 에너지 드링크 (0) | 2023.09.13 |
---|---|
[Java] 백준 풀기 11256 - 사탕 (0) | 2023.09.12 |
[Java] 백준 풀기 5338 - 마이크로소프트 로고 (0) | 2023.09.10 |
[Java] 백준 풀기 14650 - 걷다보니 신천역 삼 (Small) (0) | 2023.09.09 |
[Java] 백준 풀기 1711 - 직각삼각형 (0) | 2023.09.05 |