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

세진:)님의 프로필 이미지
세진:)

작성한 질문수

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

11. 임시반장정하기

임시반장 오답케이스가 되는 이유를 잘 모르겠습니다..

작성

·

462

·

수정됨

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 강의를 듣기전에 풀었는데, 3개는 맞는데, 정확도가 떨어지는 코드라고 나와서 왜 해당 코드가 오답케이스가 있는지 잘 모르겠습니다 ㅠㅠ

혹시 어디가 잘못된건지 여쭤봐도 될까요?

package Array.임시반장_정하기;

import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

public class Main {

    public int solution(int n, int[][] arr) {
        int answer = 0;
        Set<Integer> duplicates = new HashSet<>();
        for (int i = 0; i < 5; i++) {
            for (int j = 0; j < n; j++) {
                int duplicate = arr[j][i];
                for (int k = 0; k < n; k++) {
                    if (duplicate == arr[k][i] && j != k) {
                        duplicates.add(arr[k][i]);
                    }
                }
            }
        }
        if (duplicates.isEmpty()) return answer+1;

        for (int i = 0; i < n; i++) {
            int count = 0;
            for (int j = 0; j < 5; j++) {
                for (int x:duplicates) {
                    if (x == arr[i][j])
                        count ++;
                }
                if (count == duplicates.size()) {
                    answer = i;
                    break;
                }
            }
        }
        return answer;
    }

    public static void main(String[] args) {
        Main T = new Main();
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[][] arr = new int[n][5];
        for (int i = 0; i < n ; i++) {
            for (int j = 0; j < 5; j++) {
                arr[i][j] = sc.nextInt();
            }
        }
        System.out.println(T.solution(n,arr));
    }
}

답변 1

0

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

안녕하세요^^

채점결과인 "오답입니다"를 클릭하면 틀린 테스트 케이스를 볼 수 있습니다.

아래 입력이 틀린 케이스입니다. 디버그해보세요. 답은 4입니다.

100

1 1 1 1 1

1 1 1 1 1

1 1 1 1 1

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

8 9 5 6 7

9 5 6 7 8

5 6 7 8 9

6 7 8 9 5

7 8 9 5 6

 

세진:)님의 프로필 이미지
세진:)

작성한 질문수

질문하기