제출 #1313338

#제출 시각아이디문제언어결과실행 시간메모리
1313338nicolo_010Bitaro the Brave (JOI19_ho_t1)C++20
100 / 100
122 ms80940 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; using pii = pair<int, int>; #define f first #define s second int main() { ios::sync_with_stdio(false); cin.tie(NULL); int n, m; cin >> n >> m; vector<string> grid(n); for (int i=0; i<n; i++) { cin >> grid[i]; } vector<vector<int>> ingots(m, vector<int>(n)); for (int j=0; j<m; j++) { ingots[j][n-1] = 0; for (int i=n-2; i>=0; i--) { ingots[j][i] = ingots[j][i+1] + (grid[i+1][j] == 'I'); } } vector<vector<int>> orbs(n, vector<int>(m)); for (int i=0; i<n; i++) { orbs[i][m-1] = 0; for (int j=m-2; j>=0; j--) { orbs[i][j] = orbs[i][j+1] + (grid[i][j+1] == 'O'); } } ll ans=0; for (int i=0; i<n; i++) { for (int j=0; j<m; j++) { if (grid[i][j] == 'J') { ans += (orbs[i][j]*ingots[j][i]); } } } cout << ans << "\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...