1. 문제
프로그래머스 스킬트리
https://programmers.co.kr/learn/courses/30/lessons/49993
2. 설명
3. 접근
- 주어진 스킬만 남도록 스킬트리를 필터링합니다.
- 필터링된 스킬트리를 스택을 이용하여 스킬트리 앞에서 pop한 것이 스킬과 일치하지 않은, 즉 스킬 순서가 아닌 것의 수를 셉니다. 처음부터 순서가 아니면 바로 break하려고 순서가 아닌 수를 셌습니다.
- 스킬트리 수에서 카운트한 수를 뺀것을 리턴합니다.
4. 코드
def filter_skill(skill, skill_trees):
filtered_skills = []
word = ""
for skill_tree in skill_trees:
for i in range(len(skill_tree)):
for one in skill:
if one == skill_tree[i]:
word += one
filtered_skills.append(word)
word = ""
print(word)
return filtered_skills
def solution(skill, skill_trees):
answer = 0
filtered_skills = []
filtered_skills = filter_skill(skill, skill_trees)
no_answer = 0
for filtered_skill in filtered_skills:
skill_list = list(filtered_skill)
for i in range(len(skill_list)):
if skill[i] != skill_list.pop(0):
no_answer += 1
break
return len(filtered_skills) - no_answer
print(filter_skill("CBD", ["BACDE", "CBADF", "AECB", "BDA"]))
print(solution("CBD", ["BACDE", "CBADF", "AECB", "BDA"]))
print(filter_skill("CBD", ["ZEF", "TIG", "LFE", "ICT"]))
print(solution("CBD", ["ZEF", "TIG", "LFE", "ICT"]))
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 수박수박수박수박수박수? (python) (0) | 2021.05.15 |
---|---|
[프로그래머스] 영어 끝말잇기(python) (0) | 2021.05.14 |
[프로그래머스] 모의고사 (파이썬) (0) | 2021.05.13 |
[프로그래머스]문자열 다루기 기본 (파이썬) (0) | 2021.05.12 |
[프로그래머스] 정수 내림차순으로 배치하기 (python) (0) | 2021.05.11 |
댓글