#문제
https://programmers.co.kr/learn/courses/30/lessons/49993
#소스코드
import java.util.*;
class Solution {
public HashMap<Character, Integer> priors;
public int solution(String skill, String[] skill_trees) {
int answer = 0;
priors = new HashMap<Character, Integer>();
for(int i = 0; i < skill.length(); i++){
priors.put(skill.charAt(i), i);
}
for(String s : skill_trees){
int prior = 0;
boolean possible = true;
for(int i = 0; i < s.length(); i++){
char c = s.charAt(i);
if(priors.containsKey(c)){
if(prior == priors.get(c)){
prior = priors.get(c) + 1;
} else {
possible = false;
break;
}
}
}
if(possible) answer++;
}
return answer;
}
}
'💡Problem Solving > Programmers' 카테고리의 다른 글
[프로그래머스] 다음 큰 숫자 (Java) (0) | 2021.10.18 |
---|---|
[프로그래머스] 파일명 정렬 (Java) (0) | 2021.10.18 |
[프로그래머스] 올바른 괄호 (Java) (0) | 2021.10.18 |
[프로그래머스] 숫자의 표현 (Java) (0) | 2021.10.18 |
[프로그래머스] 3진법 뒤집기 (Java) (0) | 2021.10.17 |