강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

이현승님의 프로필 이미지
이현승

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

4. LRU(캐시, 카카오 변형)

pos의 초기화를 바꿔도 다른 문제 없을까요

작성

·

354

2

int pos를 -1이 아니라 n-1로 초기화 해놓으면
이중 포문 끝나고 if-else문 없이 하나로 쓸 수 있어서 변경해보았는데 테스트는 통과 됐지만 다른 문제가 있을 수 있나요?

import java.util.Scanner;

class Main {
    public static void main(String[] args) {
        Scanner in=new Scanner(System.in);
        int N = in.nextInt();
        int M = in.nextInt();

        int[] arr= new int[M];
        for(int i =0; i<M; i++){
            arr[i] = in.nextInt();
        }
        int[] result = new Main().solution(N,arr);
        for(int i : result){
            System.out.print(i+" ");
        }

    }

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

        int[] result = new int[n];

        for(int num : arr){
            int pos = n-1; 
            for(int i=0; i<n; i++){
                if(num == result[i]) pos = i; 
            }

            for(int j = pos; j>0 ;j--){
                result[j] = result[j-1];
            }

            result[0] = num;
        }
        return result;
    }
}

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

네. 잘하신 코드입니다.

이현승님의 프로필 이미지
이현승

작성한 질문수

질문하기