Submission #23459626
Source Code Expand
def binary_search(data, value):
left = 0
right = len(data) - 1
while left <= right:
mid = (left + right) // 2
if data[mid - 1] < value and value <= data[mid]:
return mid
elif data[mid] < value:
left = mid + 1
elif value <= data[mid - 1]:
right = mid - 1
return -1
n, q = map(int, input().split())
a = list(map(int, input().split()))
a = [0] + a
c = [0]
for i in range(1, n + 1):
c += [c[i - 1] + a[i] - a[i - 1] - 1]
for _ in range(q):
k = int(input())
if c[n] < k:
res = a[n] + k - c[n]
else:
idx = binary_search(c, k)
res = a[idx] - 1 + k - c[idx]
print(res)
Submission Info
| Submission Time | |
|---|---|
| Task | D - Kth Excluded |
| User | cubesat |
| Language | PyPy3 (7.3.0) |
| Score | 400 |
| Code Size | 721 Byte |
| Status | AC |
| Exec Time | 499 ms |
| Memory | 99168 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 400 / 400 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | example_00.txt, example_01.txt |
| All | block_00.txt, block_01.txt, block_02.txt, block_03.txt, block_04.txt, example_00.txt, example_01.txt, killer_00.txt, killer_01.txt, random_00.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| block_00.txt | AC | 485 ms | 99168 KiB |
| block_01.txt | AC | 396 ms | 86468 KiB |
| block_02.txt | AC | 305 ms | 84880 KiB |
| block_03.txt | AC | 300 ms | 76444 KiB |
| block_04.txt | AC | 171 ms | 75264 KiB |
| example_00.txt | AC | 50 ms | 61940 KiB |
| example_01.txt | AC | 49 ms | 61868 KiB |
| killer_00.txt | AC | 499 ms | 99120 KiB |
| killer_01.txt | AC | 405 ms | 90732 KiB |
| random_00.txt | AC | 491 ms | 99044 KiB |
| random_01.txt | AC | 151 ms | 75992 KiB |
| random_02.txt | AC | 377 ms | 96968 KiB |
| random_03.txt | AC | 425 ms | 88136 KiB |
| random_04.txt | AC | 182 ms | 97932 KiB |
| random_05.txt | AC | 433 ms | 90028 KiB |
| random_06.txt | AC | 193 ms | 76132 KiB |
| random_07.txt | AC | 224 ms | 83952 KiB |
| random_08.txt | AC | 375 ms | 95296 KiB |
| random_09.txt | AC | 452 ms | 91060 KiB |