Submission #434973

#TimeUsernameProblemLanguageResultExecution timeMemory
434973ak2006Bitaro the Brave (JOI19_ho_t1)C++14
100 / 100
307 ms88728 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; using vb = vector<bool>; using vvb = vector<vb>; using vi = vector<int>; using vvi = vector<vi>; using vl = vector<ll>; using vvl = vector<vl>; using vc = vector<char>; using vvc = vector<vc>; using vs = vector<string>; const ll mod = 1e9 + 7,inf = 1e18; #define pb push_back #define fast ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); void setIO() { fast; } int main() { setIO(); int n,m; cin>>n>>m; vvc g(n,vc(m)); vvi je(n,vi(m)),o(n,vi(m)); for (int i = 0;i<n;i++)for (int j = 0;j<m;j++){cin>>g[i][j]; je[i][j] = (g[i][j] == 'O'); o[i][j] = (g[i][j] == 'I'); } for (int i = n - 1;i>=0;i--) for (int j = m - 1;j>=0;j--) je[i][j] += (j != m - 1 ? je[i][j + 1] : 0), o[i][j] += (i != n - 1 ? o[i + 1][j] : 0); ll ans = 0; for (int i = 0;i<n;i++)for (int j = 0;j<m;j++) if (g[i][j] == 'J'){ ans += 1ll * je[i][j] * 1ll * o[i][j]; } cout<<ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...