
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;
}
'IT > 알고리즘' 카테고리의 다른 글
프로그래머스 lv2 프린터 (0) | 2019.11.19 |
---|---|
프로그래머스 lv2 다리를 지나는 트럭 (0) | 2019.11.16 |
프로그래머스 쇠막대기 문제(java) (1) | 2019.11.11 |
프로그래머스 Lv2 주식가격 (0) | 2019.10.28 |
백준 퇴사 문제 (0) | 2019.09.26 |