Submission #256351

#TimeUsernameProblemLanguageResultExecution timeMemory
256351Osama_AlkhodairyBitaro the Brave (JOI19_ho_t1)C++17
100 / 100
294 ms89336 KiB
#include <bits/stdc++.h> using namespace std; #define finish(x) return cout << x << endl, 0 #define ll long long const int N = 3001; int n, m, g[N][N], h[N][N]; vector <string> a; int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin >> n >> m; a.resize(n); for(auto &i : a) cin >> i; for(int i = 0 ; i < n ; i++){ for(int j = m - 1 ; j >= 0 ; j--){ g[i][j] = g[i][j + 1] + (a[i][j] == 'O'); } } for(int j = 0 ; j < m ; j++){ for(int i = n - 1 ; i >= 0 ; i--){ h[i][j] = h[i + 1][j] + (a[i][j] == 'I'); } } ll ans = 0; for(int i = 0 ; i < n ; i++){ for(int j = 0 ; j < m ; j++){ if(a[i][j] == 'J'){ ans += 1LL * g[i][j] * h[i][j]; } } } cout << ans << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...