반응형
출처 : 프로그래머스
programmers.co.kr/learn/courses/30/lessons/49993
코딩테스트 연습 - 스킬트리
programmers.co.kr
풀이과정
for 문 돌리면서 예외 처리 하면 될 것 같다.
작성코드
public int solution(String skill, String[] skill_trees) {
int answer = skill_trees.length;
int beforeIdx = 0, currentIdx = 0;
for (int i = 0; i < skill_trees.length; i++) {
// 최초의 자리는 미리 구해놓는다.
beforeIdx = skill_trees[i].indexOf(skill.charAt(0));
for (int j = 1; j < skill.length(); j++) {
currentIdx = skill_trees[i].indexOf(skill.charAt(j));
if((beforeIdx > currentIdx && currentIdx != -1) || (beforeIdx == -1 && currentIdx != -1)) {
answer--;
break;
}
beforeIdx = currentIdx;
}
}
return answer;
}
memo
졸려서 그런가 한번에 풀지 못하였다(핑계)
내일 시험인데 얼른 자야지(핑계)
하나 알게 된 건 반복문에서 break 걸어서 경우의 수 카운팅할 땐 전체 가능한 경우의 수에서 카운트 차감하는 편이
중간에 더 수월하게 이것저것 수정할 수 있는 것 같다.
반응형
'머리맞대는이야기 > 프로그래머스 (JAVA)' 카테고리의 다른 글
| [2020 KAKAO BLIND RECRUITMENT] 문자열 압축 (0) | 2020.10.19 |
|---|---|
| [2019 카카오 개발자 겨울 인턴십] 크레인 인형뽑기 게임 (0) | 2020.10.18 |
| [깊이/너비 우선 탐색(DFS/BFS)] 네트워크 (0) | 2020.09.27 |
| [깊이/너비 우선 탐색(DFS/BFS)] 타겟 넘버 (0) | 2020.09.23 |
| [연습문제] 124 나라의 숫자 (0) | 2020.09.14 |