Submission #617757

#TimeUsernameProblemLanguageResultExecution timeMemory
617757bebraBitaro the Brave (JOI19_ho_t1)C++17
100 / 100
82 ms54288 KiB
#include <bits/stdc++.h> using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); int h, w; cin >> h >> w; vector<string> t(h); for (auto& s : t) { cin >> s; } vector<vector<int>> pref_vert(h, vector<int>(w)); long long ans = 0; for (int i = h - 1; i >= 0; --i) { vector<int> pref_hor(w); pref_hor[w - 1] = t[i].back() == 'O'; for (int j = w - 2; j >= 0; --j) { if (t[i][j] == 'J') { ans += (long long)pref_hor[j + 1] * (i + 1 < h ? pref_vert[i + 1][j] : 0); } pref_hor[j] = pref_hor[j + 1] + (t[i][j] == 'O'); pref_vert[i][j] = t[i][j] == 'I'; if (i + 1 < h) { pref_vert[i][j] += pref_vert[i + 1][j]; } } } cout << ans << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...