Jam's story

[프로그래머스] 완주하지 못한 선수 본문

코딩테스트/프로그래머스

[프로그래머스] 완주하지 못한 선수

애플쩀 2022. 6. 20. 17:16

completion가 participant에 있는 것으로만 이루어진거니까 두 배열을 비교해서 없는것을 찾으면 된다고 생각 
 우선 두 배열을 정렬을 한다.  

 completion 길이가 더 짧음 항상 completion 은 participation에 있는 똑같은 멤버들중에서 빠진 한명을 찾으면 되기때문에  completion길이만큼 for문을 돌려준다
i를 for문 밖에서도 사용해야해서 선언하는 부분 빼줬고 

package prac;

import java.util.Arrays;

class Solution {
    public String solution(String[] participant, String[] completion) {
      
        Arrays.sort(participant);
        Arrays.sort(completion);
        
 
        int i = 0;
        for(;i<completion.length;i++)
            if(!participant[i].equals(completion[i]))
                break;

        return participant[i];
    }
}

/*

 [A B C/ C B] (정렬)==> [A B C / B C] i=0일때 바로걸림 
 [A B C D E / B E A C]  (정렬)==>[A B C D E/ A B C E]  i=3에서 걸림 
 [ A B A C / B C A] (정렬)==>[ A A B C/ A B C] -> i=1일때 걸림
동명이인을 제거해줄 똑같은 값이 없기 때문에  
 ------
  [B C D /B C] 마지막꺼 검사안하고 바로걸림

 

 

Hashmap 써서 다시풀어보기 

'코딩테스트 > 프로그래머스' 카테고리의 다른 글

[프로그래머스] 모의고사  (0) 2022.06.22
[JAVA] - K번째수  (0) 2022.06.21
[키패드 누르기]  (0) 2022.06.14
[숫자 문자열과 영단어]  (0) 2022.06.13
[키패드 누르기]  (0) 2022.05.30
Comments