結果
| 問題 |
No.77 レンガのピラミッド
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2014-11-26 00:22:58 |
| 言語 | Ruby (3.4.1) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 698 bytes |
| コンパイル時間 | 135 ms |
| コンパイル使用メモリ | 8,064 KB |
| 実行使用メモリ | 13,184 KB |
| 最終ジャッジ日時 | 2025-01-03 08:38:29 |
| 合計ジャッジ時間 | 3,781 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 WA * 1 |
| other | AC * 3 WA * 17 |
コンパイルメッセージ
Syntax OK
ソースコード
# Here your code !
# 1 + 3 + 5 + ... = N * (1 + (2N-1))/2 = N * N
N = gets.to_i
A = gets.split.map(&:to_i)
sum = A.inject(&:+)
level = Math.sqrt(sum).floor
mintotal = 1000000
#puts "level=#{level}"
(0...N).each{|i|
total = 0
#puts "i=#{i}"
# (-(level-1)..(level-1)).each{|j|
(0...N).each{|j|
h = A[j]
base = 0
if level >= (i-j).abs
base = level - (i-j).abs
end
if h > base then
diff = (h - base).abs
total += diff
end
#puts "i=#{i}, j=#{j}, h=#{h}, base=#{base}, diff=#{diff}, total=#{total}"
}
mintotal = [mintotal, total].min
}
puts mintotal