-
[프로그래머스] 완주하지 못한 선수개발공부/코딩테스트 연습문제 2022. 1. 6. 11:54
문제 설명 및 제한사항

풀이
import java.util.Arrays; class Solution { public String solution(String[] participant, String[] completion) { String answer = ""; Arrays.sort(participant); Arrays.sort(completion); for(int i = 0; i < completion.length; i++) { if(!participant[i].equals(completion[i])){ answer = participant[i]; break; } if(i == completion.length-1){ answer = participant[i+1]; } } return answer; } }++
1. sort (정렬) : 선언 - import java.util.Arrays;
사용 - Array.sort(Element); // 오름차순 정렬
처음에는 다중반복문을 사용했다. 그런데 효율성에서 전부 실패를 경험했다.
효율성이 떨어지는건 알고 있었지만 생각하기 귀찮았던 내가 멍청했다.
그래서 어떻게 하지.. 맵은 내가 잘 못쓰는데... 이러고 있었다.
그러다 정렬이 생각나서 두 배열을 정렬하면 되겠다 해서 잘 풀렸던 문제 같다.
그리고 다른분들 보니 리턴을 바로 해주면 되는데 나는 멍청하게 마지막에 리턴을 했다.
그래서 고친 코드는
import java.util.Arrays; 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]; } }다음과 같다. 훨씬 보기 편해진 것 같다.
'개발공부 > 코딩테스트 연습문제' 카테고리의 다른 글
[프로그래머스] 체육복 (0) 2022.01.06 [프로그래머스] 폰켓몬 (0) 2022.01.06 [프로그래머스] 소수 만들기 (0) 2022.01.04 [프로그래머스] 음양 더하기 (0) 2022.01.04 [프로그래머스] 내적 (0) 2022.01.04