提出 #6247688
ソースコード 拡げる
import sys
input = sys.stdin.readline
N,K = map(int,input().split())
# その時点で残っているもののうち、下から何番目を並べるか
arr = []
x = 1
for i in range(N,0,-1):
x *= i
q,r = divmod(x,K)
if r == 0:
q -= 1
r += K
arr.append(q+1)
x = r
size = (1 << 17) + 1
def BIT_update(BIT,x):
while x < size:
BIT[x] -= 1
x += x & (-x)
def BIT_search(BIT,value):
# sum of [0,x] >= value
x,sx = 0,0
step = size-1
while step:
y = x+step
sy = sx+BIT[y]
if sy < value:
x,sx = y,sy
step >>= 1
return x+1
# まずは全て1個ずついれておく
BIT = [x & (-x) for x in range(size)]
answer = []
for n in arr:
# 現時点で、下にn個残っている
x = BIT_search(BIT,n)
answer.append(x)
BIT_update(BIT,x)
print('\n'.join(str(x) for x in answer))
提出情報
| 提出日時 | |
|---|---|
| 問題 | C - N!÷K番目の単語 |
| ユーザ | maspy |
| 言語 | Python (3.4.3) |
| 得点 | 100 |
| コード長 | 950 Byte |
| 結果 | AC |
| 実行時間 | 709 ms |
| メモリ | 18768 KiB |
ジャッジ結果
| セット名 | Sample | Subtask1 | Subtask2 | ||||||
|---|---|---|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 30 / 30 | 70 / 70 | ||||||
| 結果 |
|
|
|
| セット名 | テストケース |
|---|---|
| Sample | sample_01.txt, sample_02.txt |
| Subtask1 | sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt |
| Subtask2 | sample_01.txt, sample_02.txt, sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask3_01.txt, subtask3_02.txt, subtask3_03.txt, subtask3_04.txt, subtask3_05.txt, subtask3_06.txt, subtask3_07.txt, subtask3_08.txt, subtask3_09.txt, subtask3_10.txt, subtask3_11.txt, subtask3_12.txt, subtask3_13.txt, subtask3_14.txt, subtask3_15.txt, subtask3_16.txt, subtask3_17.txt, subtask3_18.txt, subtask3_19.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| sample_01.txt | AC | 31 ms | 4248 KiB |
| sample_02.txt | AC | 31 ms | 4248 KiB |
| subtask1_01.txt | AC | 31 ms | 4248 KiB |
| subtask1_02.txt | AC | 31 ms | 4248 KiB |
| subtask1_03.txt | AC | 31 ms | 4248 KiB |
| subtask1_04.txt | AC | 31 ms | 4248 KiB |
| subtask1_05.txt | AC | 31 ms | 4212 KiB |
| subtask1_06.txt | AC | 31 ms | 4248 KiB |
| subtask1_07.txt | AC | 31 ms | 4248 KiB |
| subtask1_08.txt | AC | 31 ms | 4248 KiB |
| subtask1_09.txt | AC | 31 ms | 4248 KiB |
| subtask1_10.txt | AC | 31 ms | 4248 KiB |
| subtask1_11.txt | AC | 31 ms | 4248 KiB |
| subtask1_12.txt | AC | 31 ms | 4248 KiB |
| subtask1_13.txt | AC | 31 ms | 4248 KiB |
| subtask1_14.txt | AC | 31 ms | 4248 KiB |
| subtask1_15.txt | AC | 31 ms | 4248 KiB |
| subtask1_16.txt | AC | 31 ms | 4248 KiB |
| subtask1_17.txt | AC | 31 ms | 4248 KiB |
| subtask1_18.txt | AC | 31 ms | 4248 KiB |
| subtask1_19.txt | AC | 31 ms | 4248 KiB |
| subtask1_20.txt | AC | 31 ms | 4248 KiB |
| subtask1_21.txt | AC | 31 ms | 4248 KiB |
| subtask2_01.txt | AC | 648 ms | 17028 KiB |
| subtask2_02.txt | AC | 677 ms | 17884 KiB |
| subtask2_03.txt | AC | 423 ms | 12208 KiB |
| subtask2_04.txt | AC | 571 ms | 15696 KiB |
| subtask2_05.txt | AC | 102 ms | 5452 KiB |
| subtask2_06.txt | AC | 352 ms | 10760 KiB |
| subtask2_07.txt | AC | 580 ms | 15816 KiB |
| subtask2_08.txt | AC | 524 ms | 14584 KiB |
| subtask2_09.txt | AC | 377 ms | 11416 KiB |
| subtask2_10.txt | AC | 501 ms | 14164 KiB |
| subtask2_11.txt | AC | 484 ms | 13644 KiB |
| subtask2_12.txt | AC | 454 ms | 13036 KiB |
| subtask2_13.txt | AC | 440 ms | 12820 KiB |
| subtask2_14.txt | AC | 106 ms | 5584 KiB |
| subtask2_15.txt | AC | 287 ms | 9448 KiB |
| subtask2_16.txt | AC | 680 ms | 17992 KiB |
| subtask2_17.txt | AC | 604 ms | 16276 KiB |
| subtask2_18.txt | AC | 663 ms | 17584 KiB |
| subtask2_19.txt | AC | 464 ms | 13220 KiB |
| subtask3_01.txt | AC | 169 ms | 6876 KiB |
| subtask3_02.txt | AC | 663 ms | 17520 KiB |
| subtask3_03.txt | AC | 85 ms | 5052 KiB |
| subtask3_04.txt | AC | 284 ms | 9424 KiB |
| subtask3_05.txt | AC | 520 ms | 14428 KiB |
| subtask3_06.txt | AC | 709 ms | 18768 KiB |
| subtask3_07.txt | AC | 534 ms | 14940 KiB |
| subtask3_08.txt | AC | 159 ms | 6628 KiB |
| subtask3_09.txt | AC | 69 ms | 4724 KiB |
| subtask3_10.txt | AC | 52 ms | 4528 KiB |
| subtask3_11.txt | AC | 117 ms | 5712 KiB |
| subtask3_12.txt | AC | 79 ms | 4948 KiB |
| subtask3_13.txt | AC | 502 ms | 14108 KiB |
| subtask3_14.txt | AC | 683 ms | 17912 KiB |
| subtask3_15.txt | AC | 422 ms | 12308 KiB |
| subtask3_16.txt | AC | 324 ms | 10372 KiB |
| subtask3_17.txt | AC | 367 ms | 11232 KiB |
| subtask3_18.txt | AC | 427 ms | 12532 KiB |
| subtask3_19.txt | AC | 311 ms | 10024 KiB |