[문제풀이] 02-01. 큰 수 출력하기

𝒄𝒉𝒂𝒏𝒎𝒊𝒏·2023년 10월 27일
0

인프런, 자바(Java) 알고리즘 문제풀이

Array(1, 2차원 배열) - 0201. 큰 수 출력하기


🗒️ 문제


🎈 나의 풀이

	private static String solution(int n, String str) {
        String answer = "";
        String[] numbers = str.split(" ");

        answer = numbers[0];

        for(int i=1; i<n; i++) {
            if(Integer.parseInt(numbers[i]) > Integer.parseInt(numbers[i-1])) {
                answer += " " + numbers[i];
            }
        }

        return answer;
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = Integer.parseInt(sc.nextLine());
        String str = sc.nextLine();

        System.out.println(solution(n, str));
    }


🖍️ 강의 풀이

    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+" ");
		}
	}


💬 짚어가기

나의 풀이에서는 배열에 모든 정수를 넣고, 앞의 수와 비교하는 간단한 로직이다.
강의 풀이에서는 ArrayList를 이용했는데, 배열과 같이 index를 통해 요소에
빠르게 접근할 수 있으며, 배열의 크기를 가변적으로 늘릴 수 있다.

profile
𝑶𝒏𝒆 𝒅𝒂𝒚 𝒐𝒓 𝒅𝒂𝒚 𝒐𝒏𝒆.

0개의 댓글