티스토리 뷰
완주하지 못한 선수를 찾는 문제는 입출력 예를 보면 간단히 구현 가능하다. 완주하지 못한 사람은 1명뿐이고 partitiparticipant 배열에서 completion를 제외하면 쉽게 답이 나오지만, 미리 정렬을 해야 하는 함정이 있다. 정렬이 선행되지 않고 2중 for문으로만 해결하려다 보면 테스트는 통과되지만 효율성(성능) 채점에서 실패가 발생한다.
import java.util.Arrays;
class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
int pLength = participant.length;
int cLength = completion.length;
//참가자, 완주자 정렬
Arrays.sort(participant);
Arrays.sort(completion);
for (int i=0; i<pLength; i++) {
if (i<cLength && !participant[i].equals(completion[i])) {
//서로 이름이 다른 경우
answer = participant[i];
break;
} else if (i+1 == pLength) {
//마지막 인덱스에 완주하지 못한 사람이 있는 경우
answer = participant[i];
break;
}
}
return answer;
}
}
'프로그래밍 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] K번째수 (0) | 2019.10.12 |
---|---|
[프로그래머스] 2016년 (0) | 2019.10.05 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
링크
TAG
- Java
- 프로그래머
- 리눅스 명령어
- 이직
- 경력관리
- Eclipse
- 리액트
- 개발환경
- Maven
- 오라클 내장 함수
- SQL
- 소프트웨어공학
- 제주도 3박4일 일정
- 프로그래머스
- sort algorithm
- Tomcat
- 오라클
- 정렬 알고리즘
- effective java
- 자바스크립트
- 리액트 16
- spring
- 제주도 여행
- javascript
- 자바
- Collection
- Linux 명령어
- React
- 성능분석
- 회고
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함