結果
問題 | No.2225 Treasure Searching Rod (Easy) |
ユーザー |
|
提出日時 | 2023-02-24 21:53:02 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 19 ms / 2,000 ms |
コード長 | 2,220 bytes |
コンパイル時間 | 1,766 ms |
コンパイル使用メモリ | 174,396 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-09-13 05:24:26 |
合計ジャッジ時間 | 2,800 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 23 |
ソースコード
#include <bits/stdc++.h>#include <atcoder/modint>using namespace std;using namespace atcoder;using ll = long long;using ull = unsigned long long;using Graph = vector<vector<int> >;using mint = modint998244353;const int INF = 1e9;const int MOD = 1e9+7;const ll LINF = 1e+18;#define REP(i, n) for (int i = 0; (i) < (int)(n); ++ (i))#define REP2(i, s, n) for (int i = (s); i < (int)(n); i++)#define REPB(i,n) for(int i = n-1; (int)i >= 0; --i)#define FOREACH(x,a) for(auto& (x) : (a)#define YESNO(T) if(T){cout<<"YES"<<endl;}else{cout<<"NO"<<endl;}#define yesno(T) if(T){cout<<"yes"<<endl;}else{cout<<"no"<<endl;}#define YesNo(T) if(T){cout<<"Yes"<<endl;}else{cout<<"No"<<endl;}#define ALL(x) x.begin(),x.end()#define VI vector<int>#define VL vector<ll>#define VS vector<string>#define VC vector<char>#define VVI vector<vector<int> >#define VVL vector<vector<ll> >#define VVC vector<vector<char> >#define VPII vector<pair<int,int> >#define VPLL vector<pair<ll,ll> >#define VPSI vector<pair<string,int> >template <class T>inline void printVec(std::vector<T> v){REP(i,v.size()){if(i) std::cout << " ";std::cout << v[i];} std::cout << std::endl;}template <class T> bool chmax(T& a,T b) {if(a < b) {a = b;return true;}return false;}template <class T> bool chmin(T& a,T b) {if(a > b) {a = b;return true;}return false;}ll gcd(ll a, ll b){if(b == 0) return a;else return gcd(b , a & b);}ll lcm(ll a, ll b){return a * b / gcd(a,b);}int main() {cin.tie(0);ios_base::sync_with_stdio(false);int h,w,k;cin >> h >> w >> k;VVI block(h,VI(w,0));REP(i,k){int x,y,v;cin >> x >> y >> v;REP(i,h) REP(j,w){if(i == x - 1 && j == y-1){block[i][j] = v;}}}// REP(i,h){// printVec(block[i]);// }mint sum = 0;REP(i,h) REP(j,w){REP(k,h) REP(l,w){// マス(i,j)に対する操作if(k + l >= i + j && k - l >= i - j){sum += block[k][l];}}}cout << sum.val() << endl;return 0;}