[プログラマー/python]第2級スキルツリー
2797 ワード
https://programmers.co.kr/learn/courses/30/lessons/49993
アルゴリズム分類
問題を解く
スキルツリーの場合,check可能性関数を数量に応じて使用可能か否かを判断する.
この関数の論理は次のとおりです.
ex) 1. BACDEではBはskillに属しますが、Cは出る順番で、Bは先に出てfalseに戻ります.
2.CBADEでは、Cはskillに属し、Cは出現する順序であるため、indexを追加して行う.
Bもskillに属し、Bが出る順番なので行います.
Aの場合はskillではないので次の...
そんなにうまくいけばtrueに戻ります.
3.Aprovieの場合もtrueです.
ソースコード
def solution(skill, skill_trees):
def check_possible(tree):
index=0
for i in tree:
if i in skill:
if i==skill[index]:
index+=1
else:
return False
return True
cnt=0
for tree in skill_trees:
if check_possible(tree):
cnt+=1
return (cnt)
Reference
この問題について([プログラマー/python]第2級スキルツリー), 我々は、より多くの情報をここで見つけました https://velog.io/@bye9/프로그래머스파이썬-Level-2-스킬트리テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol