본문 바로가기
Study or Lecture/항해 99클럽 코딩테스트 스터디

항해 99클럽 코딩테스트 스터디 일차 15TIL (자바 / 비기너)

by yoondoo 2024. 11. 11.
728x90

<오늘의 학습 키워드>

- 리스트

- 스택

<오늘의 문제>

제목 : 프로그래머스 / Level 1 / 12906번 같은 숫자는 싫어

https://school.programmers.co.kr/learn/courses/30/lessons/12906

<풀이>

정답은 더보기

더보기
package PGS.level_1.같은숫자는싫어;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class insub2004_241111 {

    public static void main(String[] args) {

    }

    public int[] solution(int []arr) {

        List<Integer> list = new ArrayList<>();
        int value = arr[0];
        list.add(arr[0]);
        for (int i = 1; i < arr.length; i++) {
            if (value != arr[i]) {
                value = arr[i];
                list.add(arr[i]);
            }
        }

        int[] answer = new int[list.size()];
        for (int i = 0; i < answer.length; i++) {
            answer[i] = list.get(i);
        }

        return answer;
    }

}

 

- list에 입력받은 배열의 요소 순서대로 비교해서 다른 숫자가 나오면 list에 추가한 후에 마지막에 배열로 반환

<결론, 주의할점>

- 스택이나 큐를 사용한 풀이도 가능

- list에서 getLast() 같은 메서드도 사용해보자

 

반응형

댓글