μ• μ •μ½”λ”© πŸ’»
article thumbnail

1. μž„μ‹œλ°˜μž₯ μ •ν•˜κΈ°

김갑동 μ„ μƒλ‹˜μ€ μ˜¬ν•΄ 6ν•™λ…„ 1반 λ‹΄μž„μ„ 맑게 λ˜μ—ˆλ‹€.

김갑동 μ„ μƒλ‹˜μ€ μš°μ„  μž„μ‹œλ‘œ 반μž₯을 μ •ν•˜κ³  학생듀이 μ„œλ‘œ μΉœμˆ™ν•΄μ§„ 후에 μ •μ‹μœΌλ‘œ μ„ κ±°λ₯Ό 톡해 반μž₯을 μ„ μΆœν•˜λ €κ³  ν•œλ‹€.

κ·ΈλŠ” 자기반 학생 μ€‘μ—μ„œ 1ν•™λ…„λΆ€ν„° 5ν•™λ…„κΉŒμ§€ μ§€λ‚΄μ˜€λ©΄μ„œ ν•œλ²ˆμ΄λΌλ„ 같은 λ°˜μ΄μ—ˆλ˜ μ‚¬λžŒμ΄ κ°€μž₯ λ§Žμ€ 학생을 μž„μ‹œ 반μž₯으둜 μ •ν•˜λ € ν•œλ‹€.

κ·Έλž˜μ„œ 김갑동 μ„ μƒλ‹˜μ€ 각 학생듀이 1ν•™λ…„λΆ€ν„° 5ν•™λ…„κΉŒμ§€ λͺ‡ λ°˜μ— μ†ν–ˆμ—ˆλŠ”μ§€λ₯Ό λ‚˜νƒ€λ‚΄λŠ” ν‘œλ₯Ό λ§Œλ“€μ—ˆλ‹€.

예λ₯Ό λ“€μ–΄ 학생 μˆ˜κ°€ 5λͺ…일 λ•Œμ˜ ν‘œλ₯Ό μ‚΄νŽ΄λ³΄μž.

μœ„ κ²½μš°μ— 4번 학생을 보면 3번 학생과 2ν•™λ…„ λ•Œ 같은 λ°˜μ΄μ—ˆκ³ , 3번 학생 및 5번 학생과 3ν•™λ…„ λ•Œ 같은 λ°˜μ΄μ—ˆμœΌλ©°,

2번 ν•™μƒκ³ΌλŠ” 4ν•™λ…„ λ•Œ 같은 λ°˜μ΄μ—ˆμŒμ„ μ•Œ 수 μžˆλ‹€. κ·ΈλŸ¬λ―€λ‘œ 이 ν•™κΈ‰μ—μ„œ 4번 학생과 ν•œλ²ˆμ΄λΌλ„

같은 λ°˜μ΄μ—ˆλ˜ μ‚¬λžŒμ€ 2번 학생, 3번 학생과 5번 ν•™μƒμœΌλ‘œ λͺ¨λ‘ 3λͺ…이닀.

이 μ˜ˆμ—μ„œ 4번 학생이 전체 학생 μ€‘μ—μ„œ 같은 λ°˜μ΄μ—ˆλ˜ 학생 μˆ˜κ°€ 제일 λ§ŽμœΌλ―€λ‘œ μž„μ‹œ 반μž₯이 λœλ‹€.

각 학생듀이 1ν•™λ…„λΆ€ν„° 5ν•™λ…„κΉŒμ§€ μ†ν–ˆλ˜ 반이 μ£Όμ–΄μ§ˆ λ•Œ, μž„μ‹œ 반μž₯을 μ •ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.


μ΄ν•΄ν•˜κΈ° μ‰½κ²Œ for문을 1λΆ€ν„° μ‹œμž‘ν–ˆλ‹€

1. 처음 Scannerμ—μ„œ 1λΆ€ν„° λ‹΄μ•„μ€€λ‹€.

2. i번 학생과 j번 ν•™μƒμ˜ kν•™λ…„ 에 같은 λ°˜μΈμ§€ ν™•μΈλ˜λ©΄ count ν•΄μ€€λ‹€.

3. countκ°’κ³Ό max값을 λΉ„κ΅ν•˜μ—¬ maxλ₯Ό 계속 κ°±μ‹ ν•΄μ€€λ‹€.

4. max κ°€ 제일 높은 i번째 학생이 μž„μ‹œλ°˜μž₯이 λœλ‹€.

import java.util.Scanner;

public class Test2_11 {

  public int solution(int number, int[][] numberArray) {
    int result = 0;
    int max = 0;
    for (int i = 1; i <=number; i++) {
      int count = 0;
      for (int j = 1; j <= number; j++) {
        for (int k = 1; k <= 5; k++) {
          if (numberArray[i][k] == numberArray[j][k]) {
            count++;
            break;
          }
        }
      }
      if (max < count) {
        max = count;
        result = i;
      }
    }

    return result;
  }

  public static void main(String[] args) {
    Test2_11 main = new Test2_11();
    Scanner sc = new Scanner(System.in);
    int number = sc.nextInt();
    int[][] array = new int[number + 1][6];
    for (int i = 1; i <= number; i++) {
      for (int j = 1; j <= 5; j++) {
        array[i][j] = sc.nextInt();
      }
    }
    System.out.println(main.solution(number, array));
  }
}
λ°˜μ‘ν˜•