완주하지 못한 선수

김나영·2023년 6월 19일
0

프로그래머스

목록 보기
16/39

문제 : 완주하지 못한 선수

풀이

Arrays.sort(participant); // a b c(2) d e
Arrays.sort(completion); // a b d(2) e
  • 마라톤에 참여한 선수들의 이름이 담긴 배열과 완주한 선수들의 이름이 담긴 배열을 오름차순으로 정렬
for (int i = 0; i < completion.length; i++) {}
  • 참여한 선수와 완주한 선수가 다를 때까지 찾아야하므로 완주자들의 배열의 길이만큼 반복
if(participant[i].equals(completion[i])){
  continue;
}else{
  return participant[i];
  • 만약 참여한 선수의 이름이 완주한 선수들의 이름에 있다면 계속 진행

  • 그게 아니라면 참여한 선수를 return

  • 즉, 완주하지 못했음을 뜻함

return participant[participant.length-1];
  • 반복문이 다 끝나도 나오지 않는다면 참여한 선수들의 배열의 마지막 요소를 return

전체 코드

import java.util.Arrays;
class Solution {
    public String solution(String[] participant, String[] completion) {
        String answer = "";
        Arrays.sort(participant); // a b c(2) d e
        Arrays.sort(completion); // a b d(2) e
    for (int i = 0; i < completion.length; i++) {
        if(participant[i].equals(completion[i])){
            continue;
        }else{
            return participant[i];
        }
    }
    return participant[participant.length-1];
}

}

0개의 댓글