Submission #1158712

#TimeUsernameProblemLanguageResultExecution timeMemory
1158712blickDango 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)), b(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++) { b[i][j]=a[i][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) { if(j>2) if(b[j-3][i]==0) continue; ans++; for(int k = 0; k < 3; k++) { if(j-k>=0) b[i][j-k]=0; } } } } } a=b; 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) { if(b[j-2][i]==0) continue; ans++; // cout<<i<<' '<<j<<'\n'; for(int k = 0; k < 3; k++) { if(j-k>=0) b[j-k][i]=0; } } } } } cout<<ans<<'\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...