본문 바로가기

Algorithm/CodeUp

[CodeUp_Java] Q1411 : 빠진 카드

반응형

안녕하세요! Plitche(플리체)입니다.
이번 포스팅의 주제는 Q1411 빠진 카드 (자바, JAVA)입니다.

Intro

Question

문제 설명

입력

첫 줄에는 한 장을 잃어버리기 전 카드의 전체 장수 N이 주어져 있다. 단 . 3 <= N <= 50 이다.
이어지는 N-1개의 각 줄에는 한 장이 빠진 카드 묶음의 카드 숫자가 하나씩 순서 없이 나열되어 있다.

출력

여러분은 주 어진 카드 묶음에서 빠진 하나의 카드를 찾아서 그 번호를 출력해야 한다.

예시

  • 입력 :
    10
    3
    4
    1
    10
    2
    6
    7
    5
    9
  • 출력 : 8

Solution (풀이)

  • 풀이 : 메모리 11128, 시간 90
public class Answer1 {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());

        // 카드의 개수만큼 배열의 길이 지정
        int[] cards = new int[n];

        // 카드한장을 잃어버렸으니 n-1만큼 for문 반복
        for (int i=0; i<n-1; i++) {
            // 잃어버린 카드가 아니면 해당 카드번호 index에 1을 넣어준다.
            cards[Integer.parseInt(br.readLine())-1] = 1;
        }

        for (int i=0; i<n; i++) {
            // 잃어버린 카드 (index가 0인 자리를 찾아서 출력한다.
            if (cards[i]==0) {
                System.out.println(i+1);
                break;
            }
        }

    }

}

Ranking(순위)

반응형