n, m, t = map(int, input().split())
x = list(map(int, input().split()))
def build(name):
if name in built:
pass
elif B[A.index(name)] == ["0"]:
built.append(name)
else:
for i in B[A.index(name)][1:]:
if i not in built:
build(i)
built.append(name)
A = []
B = []
built = []
for i in range(0, n):
A.append(input())
B.append(input().split())
for i in range(0, B.count([])):
built.append(A[B.index([])])
A.pop(B.index([]))
B.pop(B.index([]))
[build(str(o)) for o in x]
print(len(built))
Объяснение:
htt ps://pastebin. com/cNBHaZJM
Есть много вариантов, первый это ctrl + b, но он не поддерживает ввод. Поетому советую использовать SublimeRELP, установить его не так сложно воспользуйтесь Package Control -> Install Package -> SublimeRELP. Теперь ви можете Tools -> SublimeRELP -> Python -> Run Current file. Но это поддерживает только Python2.7 и пользоваться не удобно. Для того что бы исправить это все открываем Preferences -> Key Bindings -> User и добавляем такое:
{ "keys": ["ctrl+b"], "command": "repl_open",
"caption": "Python - RUN current file",
"id": "repl_python_run",
"mnemonic": "d",
"args": {
"type": "subprocess",
"encoding": "utf8",
"cmd": ["python3", "-u", "$file_basename"],
"cwd": "$file_path",
"syntax": "Packages/Python/Python.tmLanguage",
"external_id": "python",
"extend_env": {"PYTHONIOENCODING": "utf-8"}
}
}
(в квадратние скобки).
Теперь при Ctrl + b все должно работать.
Как то так получается
def build(name):
if name in built:
pass
elif B[A.index(name)] == ["0"]:
built.append(name)
else:
for i in B[A.index(name)][1:]:
if i not in built:
build(i)
built.append(name)
A = []
B = []
built = []
for i in range(0, n):
A.append(input())
B.append(input().split())
[build(str(o)) for o in x]
print(len(built))
Объяснение:
Тоже решаю НТИ