IT/알고리즘
프로그래머스 스킬트리(java)
어센트
2019. 11. 11. 15:10

public int solution(String skill, String[] skill_trees) {
int answer = 0;
int [] chk = new int[skill.length()];
for(String temp : skill_trees) {
int flag = 1;
for(int i=0;i<skill.length();i++) {
chk[i]=temp.indexOf(skill.charAt(i));
}
for(int i=0;i<skill.length()-1;i++) {
if((chk[i]==-1&&chk[i+1]!=-1) || chk[i+1]!=-1 && chk[i]>chk[i+1] ) {
//1.앞의 스킬을 찍지 않았는데 뒤의 스킬을 선택한경우
//2.앞의 스킬보다 뒤의 스킬을 먼저 선택한 경우
flag = 0;
break;
}
}
if(flag==1)answer++;
}
return answer;
}