提出 #19905237


ソースコード 拡げる

N,*A = $<.read.split.map(&:to_i)

I = [nil]*N
A.each_with_index{|a,i|
	I[a] = i
}

S = [0]*(N+1)
def S.sum i
	s = S[i+=1]
	s += S[i] while 0 < i&=i-1
	return s
end
def S.inc i
	S[i+=1] += 1
	S[i] += 1 while S[i+=i&-i]
end

*V = I.sum{|i|
	S.inc i
	(i+1-S.sum(i)).abs
}
A.each{|a|
	V << V[-1]+N-1-a-a
}
V.pop
puts V

提出情報

提出日時
問題 F - Shift and Inversions
ユーザ ds14050
言語 Ruby (2.7.1)
得点 600
コード長 342 Byte
結果 AC
実行時間 789 ms
メモリ 48888 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 600 / 600
結果
AC × 2
AC × 24
セット名 テストケース
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 64 ms 14176 KiB
02_sample.txt AC 63 ms 14160 KiB
03_small.txt AC 61 ms 14120 KiB
04_small.txt AC 59 ms 14180 KiB
05_small.txt AC 64 ms 14316 KiB
06_small.txt AC 65 ms 14128 KiB
07_small.txt AC 61 ms 14184 KiB
08_small.txt AC 63 ms 13988 KiB
09_small.txt AC 60 ms 14248 KiB
10_small.txt AC 61 ms 14260 KiB
11_small.txt AC 64 ms 14228 KiB
12_small.txt AC 63 ms 14180 KiB
13_small.txt AC 62 ms 14260 KiB
14_small.txt AC 61 ms 13984 KiB
15_large.txt AC 274 ms 24076 KiB
16_large.txt AC 363 ms 30612 KiB
17_large.txt AC 218 ms 23040 KiB
18_large.txt AC 268 ms 24312 KiB
19_large.txt AC 382 ms 30452 KiB
20_large.txt AC 148 ms 19116 KiB
21_large.txt AC 88 ms 15380 KiB
22_max.txt AC 789 ms 48888 KiB
23_max.txt AC 726 ms 48748 KiB
24_max.txt AC 730 ms 48776 KiB