結果

問題 No.60 魔法少女
ユーザー gigurururu
提出日時 2014-11-10 00:10:23
言語 Ruby
(3.4.1)
結果
WA  
実行時間 -
コード長 460 bytes
コンパイル時間 196 ms
コンパイル使用メモリ 7,680 KB
実行使用メモリ 64,128 KB
最終ジャッジ日時 2024-12-31 09:08:48
合計ジャッジ時間 14,154 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 9 WA * 1
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

def g;gets.split.map(&:to_i);end
n,k=g
e=(1..n).map{g}
t=(1..k).map{g}
xn=t.map{|x,_|x}.min
xx=t.map{|x,y,w,_|x+w}.max
yn=t.map{|x,y,_|y}.min
yx=t.map{|x,y,w,h,_|y+h}.max

m=(yn..yx+1).map{[0]*(xx-xn+1+1)}

t.each{|x,y,w,h,d|
  x-=xn;y-=yn
  m[y][x]+=d
  m[y][x+w+1]-=d
  m[y+h+1][x]-=d
  m[y+h+1][x+w+1]+=d
}
a=[0]*(xx-xn+1)
m.map!{|i|
  s=0
  a=a.zip(i.map{|j|s+=j}).map{|j,l|j+l}
}

p e.map{|x,y,h|[h-m[y-yn][x-xn],0].max}.inject(:+)
0