class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
return answer;
}
}
해결법
방법 1
import java.util.*;
class Solution {
public String solution(String[] participant, String[] completion) {
Arrays.sort(participant);
Arrays.sort(completion);
int i;
for (i = 0; i < completion.length; i++) {
if (!participant[i].equals(completion[i])) {
return participant[i];
}
}
return participant[i];
}
}
- for문 바깥에 i를 선언하는 이유?
- 완주 못하는 선수가 participant배열의 마지막에 있을 경우,
리턴해야 할 건 participant[마지막]이라서 for문 이후에 return participant[i] 에서 반환 (i < completion.length이므로)
방법 2
import java.util.*;
class Solution {
public String solution(String[] participant, String[] completion) {
Arrays.sort(participant);
Arrays.sort(completion);
for (int i = 0; i < completion.length; i++) {
if (!participant[i].equals(completion[i])) {
return participant[i];
}
}
return participant[participant.length - 1];
}
}
완주하지 못한 선수 Lv. 1