문제
N(1<=N<=100)개의 정수를 입력받아, 자신의 바로 앞 수보다 큰 수만 출력하는 프로그램을 작성하세요.(첫 번째 수는 무조건 출력한다)
▣ 입력설명
첫 줄에 자연수 N이 주어지고, 그 다음 줄에 N개의 정수가 입력된다.
▣ 출력설명
자신의 바로 앞 수보다 큰 수만 한 줄로 출력한다.
▣ 입력예제 1
6
7 3 9 5 6 12
▣ 출력예제 1
7 9 6 12
풀이
생략
코드
1) 내가 푼 풀이
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int[] num = new int[n];
num[0] = in.nextInt();
String answer= num[0] + " ";
for(int i=1; i<n; i++) {
num[i] = in.nextInt();
if(num[i-1] < num[i]) answer += num[i] + " ";
}
System.out.print(answer);
}
}
2) 강사님 풀이
import java.util.*;
class Main {
public ArrayList<Integer> solution(int n, int[] arr){
ArrayList<Integer> answer = new ArrayList<>();
answer.add(arr[0]);
for(int i=1; i<n; i++){
if(arr[i]>arr[i-1]) answer.add(arr[i]);
}
return answer;
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n=kb.nextInt();
int[] arr=new int[n];
for(int i=0; i<n; i++){
arr[i]=kb.nextInt();
}
for(int x : T.solution(n, arr)){
System.out.print(x+" ");
}
}
}
'PS(Java) > 인프런 강의 문제' 카테고리의 다른 글
[PS] 인프런 강의 - Array 3. 가위 바위 보 (0) | 2022.10.15 |
---|---|
[PS] 인프런 강의 - Array 2. 보이는 학생 (0) | 2022.10.15 |
[PS] 인프런 강의 - 문자열 12. 암호 (0) | 2022.10.15 |
[PS] 인프런 강의 - 문자열 11. 문자열 압축 (0) | 2022.10.14 |
[PS] 인프런 강의 - 문자열 10. 가장 짧은 문자거리 (0) | 2022.10.11 |