Alice와 Bob은 작은 게임을하고 있습니다. 먼저, 그들은 잎에 숫자가있는 내부 노드가없는 루트 노드 (굵은 점으로 표시)에서 나무를 그립니다. 모든 노드에는 여러 개의 자식이있을 수 있습니다.
우리는 처음부터 시작하여 Alice (A)입니다. 그녀는 현재 노드의 자식 중 하나를 선택해야합니다. 그런 다음 Bob의 차례이며, 마찬가지로 자식 노드를 선택합니다. 리프 노드에 도달 할 때까지 계속됩니다.
리프 노드에 도달하면 게임이 종료됩니다. 가능한 한 큰 값을 가진 노드에서 끝나는 것이 Alice의 목표이고 가능한 한 작은 값을 가진 노드에서 끝나는 Bob의 목표입니다.
중첩 된 배열 형태의 트리가 주어지면 Alice와 Bob이 모두 완벽하게 플레이 할 경우 도달 할 리프 값을 반환합니다.
예 :
18: [[67, [[100, [[67, 47], [86], 21, 16], [[46, [14], 35, 85], [71, [18, 63, 69], 99, 22], 3]]], [[18, 32, 42, 80]], [[36, 70], [86, 53, 46, 59], [[41], 86, 35]]], 3]
60: [[[84, 35], [44, 60]], [[24, 98], [16, 21]]]
58: [[53, 77], [58, [82, 41]], 52]
59: [[93, [100, 53], 58, 79], [63, 94, 59], [9, [55, 48]], [40, 10, 32]]
56: [[20, 10, [[[89, 22, 77, 10], 55], [24, 28, 30, 63]]], [[49, 31]], 17, 56]
0: [0]
루트 노드는 절대 리프 노드가 아니며 적어도 하나의 리프 노드를 가리키는 것으로 가정 할 수 있습니다. 잎이 음수가 아닌 것으로 가정 할 수 있습니다.
바이트 단위의 짧은 코드가 이깁니다.