일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- docker
- vue life cycle
- github
- git push
- gradle
- 비동기통신
- Spring AOP
- maven
- 백엔드
- Java
- GIT
- RequestBody
- 개발자
- axios
- Vue.js
- 빌드
- 프론트엔드
- java version
- 트랜잭션
- aop
- PathVariable
- 자바 버전
- fetch
- VUE
- transaction
- RequestParam
- 도커
Archives
- Today
- Total
미소의 세상
[알고리즘] 완주하지 못한 선수 본문
https://programmers.co.kr/learn/courses/30/lessons/42576?language=java
코딩테스트 연습 - 완주하지 못한 선수
수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수
programmers.co.kr
import java.util.HashMap;
class Solution {
public String solution(String[] participant, String[] completion) {
String answer = "";
boolean flag;
int intVar=0;
HashMap<String, Integer> partHm = new HashMap<String, Integer>();
HashMap<String, Integer> comHm = new HashMap<String, Integer>();
for(String str : participant) {
partHm.put(str, intVar);
}
for(String str : participant) {
if(partHm.containsKey(str)) {
intVar = partHm.get(str)+1;
partHm.put(str, intVar);
}
}
intVar = 0;
for(String s : completion) {
comHm.put(s, intVar);
}
for(String str : completion) {
if(comHm.containsKey(str)) {
intVar = comHm.get(str)+1;
comHm.put(str, intVar);
}
}
for(String str : participant) {
flag = false;
for(String s : completion) {
if(str.equals(s)) {
flag = true;
if(partHm.get(str)!=comHm.get(str))
flag = false;
}
}
if(flag==false) {
answer = str;
return answer;
}
}
return answer;
}
}
'알고리즘 > 알고리즘 풀이' 카테고리의 다른 글
[알고리즘] 신고 결과 받기 (0) | 2022.04.20 |
---|---|
[알고리즘] 키패드 누르기 (0) | 2022.04.10 |
[알고리즘] 나누어 떨어지는 숫자 배열 (0) | 2022.03.10 |
[알고리즘] 타겟넘버 (0) | 2022.03.06 |
[알고리즘] 정렬-K번째수 (0) | 2022.02.28 |
Comments