Submission #1158728

#TimeUsernameProblemLanguageResultExecution timeMemory
1158728blickDango Maker (JOI18_dango_maker)C++20
0 / 100
0 ms328 KiB
#include <bits/stdc++.h>
#define F first
#define S second
#define ll long long
using namespace std;
int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    int n, m;
    cin>>n>>m;
    vector<vector<short>> a(n, vector<short> (m));
    for(int i = 0; i < n; i++) {
        for(int j = 0; j < m; j++) {
            char c;
            cin>>c;
            if(c=='R') a[i][j]=1;
            if(c=='G') a[i][j]=2;
            if(c=='W') a[i][j]=3;
        }
    }
    int ans = 0;
    for(int i = 0; i < n; i++) {
        int cnt[4];
        cnt[1]=0, cnt[2]=0, cnt[3]=0;
        for(int j = 0; j < m; j++) {
            cnt[a[i][j]]++;
            if(j>2) {
                cnt[a[i][j-3]]--;
            }
            if(j>=2) {
                if(cnt[1]==cnt[2]&&cnt[1]==cnt[3]&&cnt[1]==1&&cnt[0]==0) {
                    ans++;
                }
            }
        }
    }
    for(int i = 0; i < m; i++) {
        int cnt[4];
        cnt[1]=0, cnt[2]=0, cnt[3]=0;
        for(int j = 0; j < n; j++) {
            cnt[a[j][i]]++;
            if(j>2) {
                cnt[a[j-3][i]]--;
            }
            if(j>=2) {
                if(cnt[1]==cnt[2]&&cnt[1]==cnt[3]&&cnt[1]==1&&cnt[0]==0) {
                    ans++;
                }
            }
        }
    }
    cout<<ans<<'\n';
    
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...