-
카테고리
-
세부 분야
알고리즘 · 자료구조
-
해결 여부
미해결
멘토링 문제 질문드립니다.
22.10.31 14:24 작성 조회수 540
0
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
강의에서 작성한 if(arr[i][k]==arr[j][k])를 사용하면 코드 진행 순서가 k가 있는 for문이 먼저 진행되니까
1)arr[1][1]==arr[1][1]
2)arr[1][2]==arr[1][2]
3)arr[1][3]==arr[1][3]으로 되지 않나요?? 그래서,
if(matrix[i][j]==matrix[k][j]) 으로 하면 학년별 비교가 가능하지 않나요???
전체코드
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n=sc.nextInt();
int[][] matrix = new int[n][5];
int max = 0;
int cnt=0;
int answer = 0;
for(int i=0; i<n; i++) {
for(int j=0; j<5; j++) {
matrix[i][j] = sc.nextInt();
}
}
for(int i=0; i<n; i++) {
cnt=0;
for(int j=0; j<n; j++) {
for(int k=0; k<5; k++) {
if(matrix[i][j]==matrix[k][j]) {
cnt++;
}
}
}
if(cnt>max) {
max = cnt;
answer = i+1;
}
}
System.out.print(answer);
}
이렇게는 풀면안되는건가요?? 인프런에서는 런타임 오류가 뜨네요
답변을 작성해보세요.
0
김태원
지식공유자2022.11.02
안녕하세요^^
위 코드가 멘토링 문제가 아닌것 같은데요. 혹시 임시반장정하기 같은데요.
if(matrix[i][j]==matrix[k][j]) {
cnt++;
}
위에 if문은 i번 학생과 j번 학생이 1학년부터 5학년까지 같은 반을 했는지 확인하는 코드입니다.
위에 처럼 하면 안될 것 같습니다. 스스로 디버그해보세요.
답변 1