Submission #1165270

#TimeUsernameProblemLanguageResultExecution timeMemory
1165270GoBananas69Bitaro the Brave (JOI19_ho_t1)C++20
0 / 100
0 ms324 KiB
#include <iostream> #include <vector> #include <algorithm> #include <string> typedef long long ll; using namespace std; int main() { cin.tie(0) -> sync_with_stdio(0); ll h, w; cin >> h >> w; vector<vector<char>> grid(h + 1, vector<char>(w + 1, ' ')); vector<vector<ll>> I(h + 1, vector<ll>(w + 1, 0)); vector<vector<ll>> O(h + 1, vector<ll>(w + 1, 0)); for (ll i = 1; i<=h; ++i) { string l; cin >> l; for (ll j = 1; j<=w; ++j) grid[i][j] = l[j - 1]; } for (ll i = 1; i<=h; ++i) for (ll j = 1; j<=w; ++j) O[i][j] += O[i][j - 1] + (grid[i][j] == 'O'); for (ll j = 1; j<=w; ++j) for (ll i = 1; i<=h; ++i) I[i][j] += I[i - 1][j] + (grid[i][j] == 'I'); // for (auto &v: O) { // for (ll &i: v) cout << i << ' '; // cout << '\n'; // } // cout << '\n'; // for (auto &v: I) { // for (ll &i: v) cout << i << ' '; // cout << '\n'; // } ll res = 0; for (ll i = 1; i<=h; ++i) { for (ll j = 1; j<=w; ++j) { if (grid[i][j] == 'J') { // cout << i << ' ' << j << ": "; ll oc = O[i][w] - O[i][j]; ll ic = I[h][j] - O[i][j]; // cout << oc << " x " << ic << '\n'; res += (oc * ic); } } } cout << res << '\n'; } /* */
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...