Submission #1151446

#TimeUsernameProblemLanguageResultExecution timeMemory
1151446aagiiBitaro the Brave (JOI19_ho_t1)C++20
100 / 100
303 ms150412 KiB
#include <bits/stdc++.h>
#define ll long long
#define pb push_back
#define ff first
#define ss second
#define mp make_pair
#define sz size()
#define veg vegeta
#define harderahhh ios::sync_with_stdio(0); cin.tie(0); cout.tie(0)
const int N = 1e9+7;
using namespace std;
ll x, l, y, t, z, hp, sus1, sus2, g, sus, i, j, sus3, bruh, bruh1, bruh2, bruh3, dog1, h, r, dog2, dog3, n, k;
char na[3005][3005];
ll uai[3005][3005], oia[3005][3005];
void dfs(ll x) {
    
}
int main() { 
    harderahhh;
    cin >> n >> k;
    for (i = 1; i <= n; i++) {
        for (j = 1; j <= k; j++) {
            cin >> na[i][j];
        }
    }
    for (i = 1; i <= n; i++) {
        for (j = k; j >= 1; j--) {
            if (na[i][j] == 'O') {
                uai[i][j] = uai[i][j+1] + 1;
            } else {
                uai[i][j] = uai[i][j+1];
            }
        }
    }
    for (i = 1; i <= k; i++) {
        for (j = n; j >= 1; j--) {
            if (na[j][i] == 'I') {
                oia[j][i] = oia[j+1][i] + 1;
            } else {
                oia[j][i] = oia[j+1][i];
            }
        }
    }
    for (i = 1; i <= n; i++) {
        for (j = 1; j <= k; j++) {
            if (na[i][j] == 'J') {
                sus += uai[i][j]*oia[i][j];
            }
        }
    }
    cout << sus;
    
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...