728x90
문제: https://programmers.co.kr/learn/courses/30/lessons/42576
import java.util.Arrays;
public class programmers42576 {
public static void main(String[] args) {
String[] praticipant = {"marina", "josipa", "nikola", "vinko", "filipa"};
String [] completion = {"josipa", "filipa", "marina", "nikola"};
System.out.println(solution(praticipant, completion));
}
public static String solution(String[] participant, String[] completion) {
String answer = "";
Arrays.sort(participant);
Arrays.sort(completion);
for(int i = 0; i < completion.length; i++){
if(!completion[i].equals(participant[i])){
return participant[i];
}else{
answer = participant[completion.length];
}
}
return answer;
}
}
프로그래머스 코딩테스트 연습 문제 레벨1부터 차근차근 다시 시작.
주어지는 두개의 Array(participant, completion)를 정렬한 뒤에 두 Array를 비교한다.
만약 completion[i]와 Participant[i]가 다르다면 participant 배열 i번째 선수는 completion에 들지 못한 선수이므로 해당 값을 반환한다.
만약 completion을 끝까지 돌았지만 모두 짝이 맞았다면 participant 배열 맨 마지막에 위치한 선수가 탈락을 했으므로 participant[completion.length]를 통하여 이를 반환한다.
participant는 completion보다 항상 크기가 1 더 크기 때문에 participant[completion.length]는 배열 맨 뒤의 element를 반환할것이다.
728x90
'알고리즘' 카테고리의 다른 글
[프로그래머스] K번째 수 [Java/자바] (0) | 2019.09.25 |
---|---|
[프로그래머스] 모의고사 [Java/자바] (0) | 2019.09.25 |
[백준]동전 0 [Java/자바] (0) | 2019.09.15 |
[백준] 덩치 [Java/자바] (0) | 2019.09.10 |
[백준] 분해합 [Java/자바] (0) | 2019.09.10 |