Skip to content

Commit 285dc28

Browse files
Merge pull request #693 from baekhangyeol/main
[백한결] 105차 라이브 코테 제출
2 parents 214ab95 + 80af907 commit 285dc28

2 files changed

Lines changed: 52 additions & 0 deletions

File tree

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
from collections import defaultdict
2+
3+
def main():
4+
n = int(input())
5+
premise = defaultdict(list)
6+
7+
for _ in range(n):
8+
a, b = input().strip().split(" is ")
9+
premise[a].append(b)
10+
11+
m = int(input())
12+
questions = [input().strip().split(" is ") for _ in range(m)]
13+
14+
for a, b in questions:
15+
visited = set()
16+
17+
if dfs(premise, a, b, visited):
18+
print("T")
19+
else:
20+
print("F")
21+
22+
def dfs(graph, start, target, visited):
23+
if start == target:
24+
return True
25+
visited.add(start)
26+
27+
for neighbor in graph[start]:
28+
if neighbor not in visited:
29+
if dfs(graph, neighbor, target, visited):
30+
return True
31+
32+
return False
33+
34+
if __name__ == "__main__":
35+
main()
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
def solution(order):
2+
index = 0
3+
stack = []
4+
truck = []
5+
6+
for i in range(1, len(order) + 1):
7+
if i == order[index]:
8+
truck.append(i)
9+
index += 1
10+
else:
11+
stack.append(i)
12+
13+
while stack and stack[-1] == order[index]:
14+
truck.append(stack.pop())
15+
index += 1
16+
17+
return len(truck)

0 commit comments

Comments
 (0)