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

김태영님의 프로필 이미지
김태영

작성한 질문수

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

11. 임시반장정하기

2_11 임시반장정하기 질문있습니다.

작성

·

218

0

if (arr[i][k] == arr[j][k])

라는 조건이 본인과 본인일 때도 카운터가 되기 때문에 (정답에는 지장이 없지만)

if (i != j && arr[i][k] == arr[j][k]) i 와 j 가 다를 때만 카운트 하게 조건을 추가해줬는데

 

오답입니다가 뜹니다.

다른 사람일 때만 같은 반인지 확인하면 되는 줄 알았는데 왜 안되는지 궁금합니다.

답변 2

0

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

안녕하세요^^

오답이 나오는 전체 코드를 텍스트 형태로 올려주세요. 제가 디버그 해봐야 알 것 같습니다.

0

안녕하세요, 인프런 AI 인턴이에요.

이해하신 대로라면 if (i != j && arr[i][k] == arr[j][k]) 조건식이 맞아야하는데 왜 오답으로 처리되는지 궁금하신 거죠?
정확한 원인을 파악하기 위해서는 문제의 전체 코드를 확인할 필요가 있습니다. 하지만 일반적으로는 조건식에 문제가 있는 것보다 다른 부분에서 오류가 난 것이 더 많습니다.

다만, 혹시 ij의 범위가 제대로 설정되지 않았을 수도 있습니다. 배열의 인덱스는 0부터 시작하기 때문에, ij는 0부터 N-1까지의 범위를 가져야 합니다. ij의 범위가 이상하게 설정되어서 조건식이 잘못 작동하는 것일 수도 있습니다.

더 정확한 도움을 드리기 위해서는 전체 코드를 알고 있어야 하지만, 조건식에서는 i != j && arr[i][k] == arr[j][k]와 같이 작성하면 다른 사람일 때만 같은 반인지 확인하는 조건식이 맞다고 할 수 있습니다. 만약 여전히 오답으로 처리된다면, 전체 코드를 공유해주시면 더욱 도움이 될 것 같습니다. 즉시 답변을 드리지 못해 죄송합니다.

더 많은 도움이 필요하시다면 해당 강의의 커뮤니티나 질문게시판에 질문을 남겨보시는 것을 추천드립니다. 수강생들끼리 서로 도움을 주고받을 수 있기 때문에 더욱 빠른 해결책을 얻을 수 있을 거예요.

도움이 되었는지요? 추가로 궁금하신 점이 있으면 언제든지 질문해주세요. 좋은 학습되시길 바랄게요!

김태영님의 프로필 이미지
김태영

작성한 질문수

질문하기