Submission #88554

#TimeUsernameProblemLanguageResultExecution timeMemory
88554GogotchuriTriumphal arch (POI13_luk)Cpython 3
60 / 100
2073 ms69572 KiB
import sys sys.setrecursionlimit(200000) def depth_first(h, p, t, ls, memo): sm = 0 for elem in ls[h]: if elem == p: continue depth_first(elem, h, t, ls, memo) sm += memo[elem] memo[h] = max(sm - t + 1, 1) def main(): n = int(input()) ls = [[] for i in range(n + 2)] memo = [0 for i in range(n + 2)] for _ in range(n - 1): f, s = map(int, input().split()) f -= 1 s -= 1 ls[f].append(s) ls[s].append(f) s = 0 e = n while not s > e: m = (s + e) >> 1 t = m depth_first(0, -1, t, ls, memo) if memo[0] > 1: s = m + 1 else: e = m-1 print(s) if __name__ == "__main__": main()
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...