본문 바로가기

CodingTest Practice

[인프런] 큰 수 출력하기

큰 수 출력하기

N(1<=N<100)개의 정수를 입력받아, 자신의 바로 앞 수보다 큰 수만 출력하는 프로그램을 작성

 

■ 문제 풀이

1) 입력 설명
- 첫 번째 수는 무조건 출력
- 첫 줄에 자연수 N이 주어지고, 그 다음 줄에 N개의 정수가 입력

2) 출력 설명
- 자신의 바로 앞 수보다 큰 수만 한 줄로 출력

3) 테스트
- input :
6
7 3 9 5 6 12
- output : 7 9 6 12

 

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Main {

    private List<Integer> solution(int[] input) {
        List<Integer> answer = new ArrayList<>();
        answer.add(input[0]);   // 첫번째 수는 무조건 출력

        for (int i = 1; i < input.length; i++) {
            if (input[i] > input[i - 1]) {
                answer.add(input[i]);
            }
        }

        return answer;
    }

    public static void main(String[] args) {
        Main main = new Main();

        Scanner scanner = new Scanner(System.in);
        int inputCnt = scanner.nextInt();
        int[] input = new int[inputCnt];

        for (int i = 0; i < inputCnt; i++) {
            input[i] = scanner.nextInt();
        }

        for (int num : main.solution(input)) {
            System.out.print(num + " ");
        }
    }
}

 

'CodingTest Practice' 카테고리의 다른 글

[인프런] 가위 바위 보  (0) 2022.04.14
[인프런] 보이는 학생  (0) 2022.04.11
[인프런] 가장 짧은 문자 거리  (0) 2022.04.05
[인프런] 숫자만 추출  (0) 2022.04.03
[인프런] 유효한 팰린드롬  (0) 2022.04.03