[Programmers][Java] 스킬트리
https://programmers.co.kr/learn/courses/30/lessons/49993#qna
📒 문제
📒 제한조건
🌻 코드
class Solution {
public int solution(String skill, String[] skill_trees) {
int answer = 0;
int cnt = 0;
boolean a = false;
// skill의 길이가 1일때는 모든 skill_trees가 가능하다.(중요)
if (skill.length() == 1) {
answer += skill_trees.length;
}
else {
for (int i = 0; i < skill_trees.length; i++) {
for (int k = 0; k < skill.length() - 1; k++) {
int index1 = skill_trees[i].indexOf(skill.charAt(k)); // 현재 skill의 위치
int index2 = skill_trees[i].indexOf(skill.charAt(k + 1)); // 다음 skill의 위치
// 앞의 스킬을 배우지 않고, 뒤의 스킬을 배울때
if (index1 == -1 && index2 != -1) {
a = false;
break;
}
//앞의 스킬을 배우지만, 뒤의 스킬을 더 먼저 배울때
else if (index2 != -1 && index1 > index2) {
a = false;
break;
}
else a = true;
}
if (a == true) cnt++;
}
answer = cnt;
}
return answer;
}
}
💡 정리하기
👉 문제에서 "순서에 없는 다른 스킬(힐링 등)은 순서에 상관없이 배울 수 있습니다. " 을 잘 생각해봐야했다. 이 말은 스킬 순서에 없는 스킬들만 스킬트리에 있을 경우도 가능하다는 것을 알 수 있다. 또한, 스킬의 길이가 1일때 모든 스킬트리는 가능하다 !
Author And Source
이 문제에 관하여([Programmers][Java] 스킬트리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@hye_b/ProgrammersJava-스킬트리
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
class Solution {
public int solution(String skill, String[] skill_trees) {
int answer = 0;
int cnt = 0;
boolean a = false;
// skill의 길이가 1일때는 모든 skill_trees가 가능하다.(중요)
if (skill.length() == 1) {
answer += skill_trees.length;
}
else {
for (int i = 0; i < skill_trees.length; i++) {
for (int k = 0; k < skill.length() - 1; k++) {
int index1 = skill_trees[i].indexOf(skill.charAt(k)); // 현재 skill의 위치
int index2 = skill_trees[i].indexOf(skill.charAt(k + 1)); // 다음 skill의 위치
// 앞의 스킬을 배우지 않고, 뒤의 스킬을 배울때
if (index1 == -1 && index2 != -1) {
a = false;
break;
}
//앞의 스킬을 배우지만, 뒤의 스킬을 더 먼저 배울때
else if (index2 != -1 && index1 > index2) {
a = false;
break;
}
else a = true;
}
if (a == true) cnt++;
}
answer = cnt;
}
return answer;
}
}
👉 문제에서 "순서에 없는 다른 스킬(힐링 등)은 순서에 상관없이 배울 수 있습니다. " 을 잘 생각해봐야했다. 이 말은 스킬 순서에 없는 스킬들만 스킬트리에 있을 경우도 가능하다는 것을 알 수 있다. 또한, 스킬의 길이가 1일때 모든 스킬트리는 가능하다 !
Author And Source
이 문제에 관하여([Programmers][Java] 스킬트리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@hye_b/ProgrammersJava-스킬트리저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)