Array(배열) 02. 보이는 학생
* 사용 언어 : JAVA
* Inflearn의 자바(Java)알고리즘 문제풀이 : 코딩테스트 대비 강의내용 정리
1. 문제
일렬로 서 있는 학생의 키가 앞에서부터 순서대로 주어질 때, 맨 앞에 서 있는 선생님이 볼 수 있는 최대학생 수 출력
첫 줄에 정수로 학생의 수가 입력되고, 다음 줄에 학생의 키가 입력
// 입력
8
130 135 148 140 145 150 150 153
// 출력
5
2. 풀이
맨 처음 학생은 무조건 보이니 answer 변수에 정수 1을 초기화하고 taller 변수에 주어진 배열의 첫번째 인덱스 값을 저장하였다.
이 후, 주어진 학생들의 키를 for문으로 돌면서 첫번째 학생의 키부터 큰 키를 가진 학생과 비교한다.
큰 키를 가진 학생이 자기보다 더 큰 학생을 만나면 taller 변수에 더 큰 학생의 값을 넣고 answer 변수를 1씩 증가 시킨다.
3. 코드
public class Main {
public int solution(Integer[] array) {
int answer = 1;
int taller = array[0];
for (int i = 0; i < array.length; i++) {
if (taller < array[i]) {
taller = array[i];
answer++;
}
}
return answer;
}
public static void main(String[] args) {
Main T = new Main();
Scanner scanner = new Scanner(System.in);
int num = scanner.nextInt();
Integer[] array = new Integer[num];
for (int i = 0; i < num; i++) {
array[i] = scanner.nextInt();
}
System.out.println(T.solution(array));
}
}
'Algorithm' 카테고리의 다른 글
[자바 알고리즘 문제풀이] String 11. 문자열 압축 (0) | 2022.05.16 |
---|---|
[자바 알고리즘 문제풀이] String 10. 문자 거리 (0) | 2022.05.11 |
[자바 알고리즘 문제풀이] Array 01. 큰 수 출력하기 (0) | 2022.05.09 |
[자바 알고리즘 문제풀이] String 09. 숫자만 추출 (0) | 2022.03.21 |
[자바 알고리즘 문제풀이] String 08. 유효한 팰린드룸 (0) | 2022.03.07 |