結果
問題 | No.60 魔法少女 |
ユーザー |
|
提出日時 | 2015-02-18 03:10:10 |
言語 | Python2 (2.7.18) |
結果 |
AC
|
実行時間 | 1,964 ms / 5,000 ms |
コード長 | 669 bytes |
コンパイル時間 | 182 ms |
コンパイル使用メモリ | 7,040 KB |
実行使用メモリ | 49,280 KB |
最終ジャッジ日時 | 2024-06-23 21:01:07 |
合計ジャッジ時間 | 21,276 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 10 |
ソースコード
N,K = map(int,raw_input().split()) M = [[0]*1010 for i in xrange(1010)] for loop in xrange(N): x,y,hp = map(int,raw_input().split()) x += 500; y += 500 M[y][x] = hp A = [[0]*1010 for i in xrange(1010)] for loop in xrange(K): ax,ay,w,h,d = map(int,raw_input().split()) ax += 500; ay += 500 ex,ey = min(1009,ax+w+1), min(1009,ay+h+1) A[ay][ax] += d A[ay][ex] -= d A[ey][ax] -= d A[ey][ex] += d ans = 0 for x in xrange(1010): for y in xrange(1,1010): A[y][x] += A[y-1][x] for y in xrange(1010): for x in xrange(1010): if x > 0: A[y][x] += A[y][x-1] ans += max(0, M[y][x]-A[y][x]) print ans