알고리즘/프로그래머스
[프로그래머스] 스킬트리
쿠큭다스
2023. 9. 27. 18:34
728x90
1. 문제 설명
2. 풀이 방법
정해진 순서대로, 스킬을 배워야 하므로 skill의 각 자리수에 인덱스를 부여해 체크 하기로 하였다.
개인적으로 풀이 방법이 백준 18770과 유사한 것 같다.
[작성 코드]
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
|
import java.util.*;
class Solution {
public int solution(String skill, String[] skill_trees) {
int answer = 0;
HashMap<Character,Integer> map=new HashMap<>();
for(int i=0;i<skill.length();i++){
map.put(skill.charAt(i),i);
}
for(int i=0;i<skill_trees.length;i++){
String s=skill_trees[i];
int idx=0;
boolean chk=true;
for(int j=0;j<s.length();j++){
if(map.containsKey(s.charAt(j))){
if(map.get(s.charAt(j))!=idx){
chk=false;
break;
}
else {
idx++;
}
}
}
if(chk) answer++;
}
return answer;
}
}
|
728x90