Submission #236788

#TimeUsernameProblemLanguageResultExecution timeMemory
236788NONAMEAutomobil (COCI17_automobil)C++17
100 / 100
29 ms16000 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; const ll base = 1e9 + 7; const int N = 1e6 + 10; ll row[N], col[N]; void mul(ll &x, ll y) { (x *= y) %= base; } void sum(ll &x, ll y) { (x += y) %= base; } int main() { ll n, m, q; cin >> n >> m >> q; for (int i = 1; i <= n; ++i) row[i] = 1; for (int j = 1; j <= m; ++j) col[j] = 1; while (q--) { char type; ll x, y; cin >> type >> x >> y; if (type == 'R') mul(row[x], y); else mul(col[x], y); } ll sm = 0; for (int i = 1; i <= m; ++i) sum(sm, col[i]); ll cr = 0; for (int i = 1; i <= m; ++i) { ll vl = col[i]; mul(vl, i); sum(cr, vl); } ll ans = 0; for (int i = 1; i <= n; ++i) { ll vl = cr; mul(vl, row[i]); sum(ans, vl); vl = sm; mul(vl, m); sum(cr, vl); } cout << ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...