結果
| 問題 |
No.77 レンガのピラミッド
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2017-02-21 21:27:50 |
| 言語 | Ruby (3.4.1) |
| 結果 |
AC
|
| 実行時間 | 102 ms / 5,000 ms |
| コード長 | 1,010 bytes |
| コンパイル時間 | 242 ms |
| コンパイル使用メモリ | 7,424 KB |
| 実行使用メモリ | 12,288 KB |
| 最終ジャッジ日時 | 2024-12-30 15:05:54 |
| 合計ジャッジ時間 | 3,842 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 5 |
| other | AC * 20 |
コンパイルメッセージ
Syntax OK
ソースコード
class Yukicoder
def initialize
@n = gets.to_i
@blocks = gets.chomp.split.map(&:to_i)
end
def run
ans = 999999999
1.upto(100) do |i|
plus = 0
minus = 0
require_num = 1
i.times do |j|
if j < @n
if @blocks[j] < require_num
minus += require_num - @blocks[j]
else
plus += @blocks[j] - require_num
end
else
minus += require_num
end
require_num += 1
end
require_num = i-1
(i-1).times do |j|
if (i + j) < @n
if @blocks[i + j] < require_num
minus += require_num - @blocks[i + j]
else
plus += @blocks[i + j] - require_num
end
else
minus += require_num
end
require_num -= 1
end
((2*i-1)...@n).each do |j|
plus += @blocks[j]
end
ans = plus if plus >= minus && plus < ans
end
return ans
end
end
puts Yukicoder.new.run