結果
問題 | No.2225 Treasure Searching Rod (Easy) |
ユーザー |
|
提出日時 | 2023-02-25 00:55:39 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 14 ms / 2,000 ms |
コード長 | 1,560 bytes |
コンパイル時間 | 5,126 ms |
コンパイル使用メモリ | 313,836 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-09-13 06:32:04 |
合計ジャッジ時間 | 6,043 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 23 |
ソースコード
#include <bits/stdc++.h>#include <atcoder/all>#define rep(i, n) for (int i = 0; i < (int)(n); i++)#define rrep(i, n, m) for (int i = (int)(n); i > (int)(m); i--)#define rep1(i, n, m) for (int i = (int)(n); i < (int)(m); i++)#define all(x) (x).begin(), (x).end()#define rall(x) (x).rbegin(), (x).rend() using namespace atcoder;using ll = long long;const ll MOD1 = 1000000007LL;const ll MOD2 = 998244353LL;using namespace std;using namespace atcoder;const vector<pair<int, int>> dpos4 = {{1, 0}, {0, 1}, {-1, 0}, {0, -1}};// const vector<pair<int, int>> dpos8 = {{-1, -1}, {-1, 0}, {-1, 1}, {0, -1}, {0, 1}, {1, -1}, {1, 0}, {1, 1}};template <typename T>bool chmax(T &a, const T &b) {if (a < b) {a = b; // aをbで更新return true;}return false;}template <typename T>bool chmin(T &a, const T &b) {if (a > b) {a = b; // aをbで更新return true;}return false;}template<typename T>T pow(T a, ll b){if(b == 0) return 1;if(b % 2 == 0) return pow(a / 2, b / 2);return a * pow(a, b - 1);}using mint = modint998244353;int main() {int H, W, K;cin >> H >> W >> K;vector<vector<mint>> treasures(H, vector<mint>(W, 0));rep(i, K){int a, b; ll c;cin >> a >> b >> c;a--, b--;treasures[a][b] += c;}mint ans = 0;rep(h, H) rep(w, W) rep(i, H) rep(j, W){if(i + j >= h + w && i - j >= h - w){ans += treasures[i][j];}}cout << ans.val() << endl;return 0;}