提出 #21895969
ソースコード 拡げる
N = int(input())
A = list(map(int, input().split()))
for i in range(N):
A[i]+=1
# BIT
data = [0]*(N+1)
def add(k, x):
while k <= N:
data[k] += x
k += k & -k
def get(k):
s = 0
while k:
s += data[k]
k -= k & -k
return s
ans = 0
for i, a in enumerate(A):
# 自分より小さい要素がいくつ存在するかを計算
ans += (N-1-i) - get(a)
add(a, 1)
for i in range(N):
print(ans)
ans += N+1-A[i]*2
提出情報
| 提出日時 | |
|---|---|
| 問題 | F - Shift and Inversions |
| ユーザ | H20 |
| 言語 | PyPy3 (7.3.0) |
| 得点 | 600 |
| コード長 | 495 Byte |
| 結果 | AC |
| 実行時間 | 251 ms |
| メモリ | 101016 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 600 / 600 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | 01_sample.txt, 02_sample.txt |
| All | 01_sample.txt, 02_sample.txt, 03_small.txt, 04_small.txt, 05_small.txt, 06_small.txt, 07_small.txt, 08_small.txt, 09_small.txt, 10_small.txt, 11_small.txt, 12_small.txt, 13_small.txt, 14_small.txt, 15_large.txt, 16_large.txt, 17_large.txt, 18_large.txt, 19_large.txt, 20_large.txt, 21_large.txt, 22_max.txt, 23_max.txt, 24_max.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 01_sample.txt | AC | 62 ms | 61976 KiB |
| 02_sample.txt | AC | 52 ms | 61944 KiB |
| 03_small.txt | AC | 52 ms | 61876 KiB |
| 04_small.txt | AC | 50 ms | 61832 KiB |
| 05_small.txt | AC | 54 ms | 61992 KiB |
| 06_small.txt | AC | 53 ms | 61896 KiB |
| 07_small.txt | AC | 49 ms | 61952 KiB |
| 08_small.txt | AC | 50 ms | 61900 KiB |
| 09_small.txt | AC | 49 ms | 61724 KiB |
| 10_small.txt | AC | 56 ms | 61888 KiB |
| 11_small.txt | AC | 51 ms | 61964 KiB |
| 12_small.txt | AC | 51 ms | 61728 KiB |
| 13_small.txt | AC | 50 ms | 61912 KiB |
| 14_small.txt | AC | 50 ms | 61992 KiB |
| 15_large.txt | AC | 139 ms | 83220 KiB |
| 16_large.txt | AC | 155 ms | 86052 KiB |
| 17_large.txt | AC | 121 ms | 80340 KiB |
| 18_large.txt | AC | 135 ms | 83512 KiB |
| 19_large.txt | AC | 153 ms | 86280 KiB |
| 20_large.txt | AC | 100 ms | 73104 KiB |
| 21_large.txt | AC | 88 ms | 69684 KiB |
| 22_max.txt | AC | 251 ms | 101016 KiB |
| 23_max.txt | AC | 236 ms | 100876 KiB |
| 24_max.txt | AC | 236 ms | 101000 KiB |