結果

問題 No.1233 割り切れない気持ち
ユーザー siman
提出日時 2020-10-20 11:21:43
言語 Ruby
(3.4.1)
結果
AC  
実行時間 612 ms / 3,153 ms
コード長 398 bytes
コンパイル時間 55 ms
コンパイル使用メモリ 7,296 KB
実行使用メモリ 36,736 KB
最終ジャッジ日時 2024-07-21 08:19:07
合計ジャッジ時間 13,097 ms
ジャッジサーバーID
(参考情報)
judge1 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 39
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

N = gets.to_i
A = gets.split.map(&:to_i)
M = A.max
C = Array.new(M + 1, 0)
D = Array.new(M + 1, 0)

ans = 0

A.each do |a|
  C[a] += 1
  ans += a
end

ans *= N

M.downto(1) do |i|
  C[i - 1] += C[i]
end

=begin
1.upto(M) do |i|
  i.step(M, i) do |j|
    D[i] += C[j]
  end
end
=end

A.uniq.each do |i|
  i.step(M, i) do |j|
    D[i] += C[j]
  end
end

A.each do |a|
  ans -= D[a] * a
end

puts ans
0