結果
問題 |
No.60 魔法少女
|
ユーザー |
👑 |
提出日時 | 2022-05-12 14:58:51 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 238 ms / 5,000 ms |
コード長 | 699 bytes |
コンパイル時間 | 574 ms |
コンパイル使用メモリ | 67,496 KB |
最終ジャッジ日時 | 2025-01-29 06:19:58 |
ジャッジサーバーID (参考情報) |
judge3 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 10 |
ソースコード
#include <iostream> using namespace std; int enem[2000][2000]; int dam[2000][2000]; int rudam[2000][2000]; int main(){ int n,k;cin>>n>>k; for(int i = 0; n > i; i++){ int x,y,hp;cin>>x>>y>>hp; enem[x+500][y+500] = hp; } for(int i = 0; k > i; i++){ int ax,ay,w,h,d;cin>>ax>>ay>>w>>h>>d; dam[ax+500][ay+500] += d; dam[ax+500+w+1][ay+500] -= d; dam[ax+500][ay+500+h+1] -= d; dam[ax+500+w+1][ay+500+h+1] += d; } long long ans = 0; for(int i = 1; 1500 > i; i++){ for(int j = 1; 1500 > j; j++){ rudam[i][j] = rudam[i-1][j]+rudam[i][j-1]-rudam[i-1][j-1]+dam[i-1][j-1]; ans += max(0,enem[i-1][j-1]-rudam[i][j]); } } cout << ans << endl; }