https://programmers.co.kr/learn/courses/30/lessons/42576

 

코딩테스트 연습 - 완주하지 못한 선수

수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수

programmers.co.kr

 

 

문제 분석

- 입력받은 배열(participant, completion)을 정렬하여 처리한다.

- 각 배열을 비교하여 완주하지 못한 선수를 출력한다.

 

 

문제 풀이

1. 각 배열들(participant, completion)들을 정렬한다.

2. while문을 통해 두 배열을 비교하여 같지 않을 경우 출력한다.

3. 만약 끝까지 같지 않을 경우 마지막 선수를 출력한다.

import java.util.*;

class Solution {
    public String solution(String[] participant, String[] completion) {
        String answer = "";
        
        Arrays.sort(participant);
        Arrays.sort(completion);
        
        int idx = 0;
        while(true){
            if(idx==completion.length){
                answer = participant[completion.length];
                break;
            }
            
            if(!completion[idx].equals(participant[idx])){
                answer = participant[idx];
                break;
            }
            
            idx++;
        }
        
        return answer;
    }
}

 

 

https://github.com/SOEUN2/Algorithm

'Algorithm > programmers' 카테고리의 다른 글

programmers 내적  (0) 2022.03.20
programmers 소수 만들기  (0) 2022.03.13
programmers K번째수  (0) 2022.03.13
programmers 모의고사  (0) 2022.03.13
programmers 체육복  (0) 2022.03.13