Submission #798291

#TimeUsernameProblemLanguageResultExecution timeMemory
798291jackliy369A Huge Tower (CEOI10_tower)Cpython 3
90 / 100
1077 ms72920 KiB
N, D = map(int, input().split()) blocks = sorted(list(map(int, input().split()))) # def binary_search(l, r, size, list): # ans = r + 1 # while r >= l: # m = (l + r) // 2 # # m = l + floor(log10(r - l + 1)) # # m = l + (r - l) // 1000000 # if size <= list[m] + D: # r = m - 1 # ans = m # else: # l = m + 1 # return ans ans = 1 index = 0 for i in range(1, N): while index < i and blocks[i] > blocks[index] + D: index += 1 ans *= (i - index + 1) % 1000000009 print(ans % 1000000009)
#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...
#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...