제출 #1216485

#제출 시각아이디문제언어결과실행 시간메모리
1216485gabyferaqTetris (COCI17_tetris)C++20
56 / 80
0 ms328 KiB
#include<bits/stdc++.h> using namespace std; void solve() { int n,m; cin>>n>>m; vector<vector<char>> ma(n,vector<char> (m)); vector<vector<bool>> vis(n,vector<bool> (m,false)); for(int i=0;i<n;i++) { for(int j=0;j<m;j++) cin>>ma[i][j]; } int c,l,fi,fd,t; c=l=fi=fd=t=0; for(int i=0;i<n;i++) { for(int j=0;j<m;j++) { if(ma[i][j]!='.'&&vis[i][j]==false) { if(ma[i][j]==ma[i][j+1]&&ma[i][j]==ma[i+1][j]&&ma[i][j]==ma[i+1][j+1]) { c++, vis[i][j]=vis[i][j+1]=vis[i+1][j]=vis[i+1][j+1]=true; continue; } if(ma[i][j]==ma[i][j+1]&&ma[i][j]==ma[i][j+2]&&ma[i][j]==ma[i][j+3]) { l++, vis[i][j]=vis[i][j+1]=vis[i][j+2]=vis[i][j+3]=true; continue; } if(ma[i][j]==ma[i+1][j]&&ma[i][j]==ma[i+1][j-1]&&ma[i][j]==ma[i][j+1]) { fi++, vis[i][j]=vis[i+1][j]=vis[i+1][j-1]=vis[i][j+1]=true; continue; } if(ma[i][j]==ma[i][j+1]&&ma[i][j]==ma[i+1][j+1]&&ma[i][j]==ma[i+1][j+2]) { fd++, vis[i][j]=vis[i][j+1]=vis[i+1][j+1]=vis[i+1][j+2]=true; continue; } if(ma[i][j]==ma[i+1][j+1]&&ma[i][j]==ma[i+1][j]&&ma[i][j]==ma[i+1][j-1]) { t++, vis[i][j]=vis[i+1][j+1]=vis[i+1][j-1]=vis[i+1][j]=true; continue; } if(ma[i][j]==ma[i][j+1]&&ma[i][j]==ma[i][j+2]&&ma[i][j]==ma[i+1][j+1]) { t++, vis[i][j]=vis[i+1][j+1]=vis[i][j+1]=vis[i][j+2]=true; continue; } if(ma[i][j]==ma[i+2][j]&&ma[i][j]==ma[i+1][j]&&ma[i][j]==ma[i+1][j-1]) { t++, vis[i][j]=vis[i+2][j]=vis[i+1][j-1]=vis[i+1][j]=true; continue; } if(ma[i][j]==ma[i+2][j]&&ma[i][j]==ma[i+1][j]&&ma[i][j]==ma[i+1][j+1]) { t++, vis[i][j]=vis[i+2][j]=vis[i+1][j+1]=vis[i+1][j]=true; continue; } if(ma[i][j]==ma[i+1][j]&&ma[i][j]==ma[i+1][j+1]&&ma[i][j]==ma[i+2][j+1]) { fi++, vis[i][j]=vis[i+1][j]=vis[i+1][j+1]=vis[i+2][j+1]=true; continue; } if(ma[i][j]==ma[i+1][j]&&ma[i][j]==ma[i+1][j-1]&&ma[i][j]==ma[i+2][j-1]) { fd++, vis[i][j]=vis[i+1][j]=vis[i+1][j-1]=vis[i+2][j-1]=true; continue; } if(ma[i][j]==ma[i+1][j]&&ma[i][j]==ma[i+2][j]&&ma[i][j]==ma[i+3][j]) { l++, vis[i][j]=vis[i+1][j]=vis[i+2][j]=vis[i+3][j]=true; continue; } } } } cout<<c<<endl; cout<<l<<endl; cout<<fi<<endl; cout<<fd<<endl; cout<<t; } int main() { solve(); }
#Verdict Execution timeMemoryGrader output
Fetching results...