반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 코테
- java
- 개발
- 맛집
- Apache Kafka
- 여행
- HIVE
- Data Engineer
- Trino
- 백준
- bigdata engineering
- Spark
- BigData
- bigdata engineer
- apache iceberg
- 용인맛집
- Data Engineering
- 알고리즘
- 코엑스
- 자바
- hadoop
- 프로그래머스
- 영어
- 삼성역맛집
- Iceberg
- 코엑스맛집
- 코딩
- Kafka
- 코딩테스트
- pyspark
Archives
- Today
- Total
지구정복
[해쉬] 프로그래머스 - 완주하지 못한 선수 본문
728x90
반응형
programmers.co.kr/learn/courses/30/lessons/42576?language=java
코딩테스트 연습 - 완주하지 못한 선수
수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수
programmers.co.kr
내 풀이
더보기
import java.util.Arrays;
class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
//참가선수, 완주선수 배열을 모두 오름차순 정렬한다.
Arrays.sort( participant );
Arrays.sort( completion );
//반복문 돌면서 참가선수와 완주선수 이름이 같지 않다면 answer정의
for( int i=0; i<completion.length; i++ ) {
if( !participant[i].equals( completion[i] ) ) {
answer = participant[i];
break;
}
}
return answer;
}
}
해시맵을 이용한 풀이
더보기
import java.util.HashMap;
class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
//해시맵 선언 <선수명, 값>
HashMap<String, Integer> hm = new HashMap<>();
//참가선수를 해시맵에 넣는다. 이때 동명이인이 있을 수 있으니 .getOrDefault메소드 사용
for (String player : participant) hm.put(player, hm.getOrDefault(player, 0) + 1);
//완주선수는 해시맵에서 값을 1씩빼준다.
for (String player : completion) hm.put(player, hm.get(player) - 1);
//해시맵에서 0이 아닌 선수를 찾는데 무조건 1명이다.
for (String key : hm.keySet()) {
if (hm.get(key) != 0){
answer = key;
break;
}
}
return answer;
}
}
728x90
반응형
'데이터 엔지니어링 정복 > Algorithm' 카테고리의 다른 글
[Greedy] 백준 - 강의실배정 (0) | 2021.06.04 |
---|---|
[Greedy] 백준 - 신입사원 (0) | 2021.06.03 |
[Greedy] 백준 - 동전0 (0) | 2021.06.03 |
[완전탐색] 프로그래머스 - 모의고사 (0) | 2021.04.11 |
[정렬] 프로그래머스 - K번째 수 (0) | 2021.04.11 |
Comments