| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 510082 | Jean7 | Tetris (COCI17_tetris) | C++14 | 1 ms | 312 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
#define fastio ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define int long long
using namespace std ;
int32_t main ()
{
fastio
int n , m ;
cin >> n >> m ;
char a[n+2][m+2] ;
for ( int i = 0 ; i < n+2 ; i++ ) a[i][0] = '.' ;
for ( int k = 0 ; k < m+2 ; k++ ) a[0][k] = '.' ;
for ( int i = 0 ; i < n+2 ; i++ ) a[i][m+1] = '.' ;
for ( int k = 0 ; k < m+2 ; k++ ) a[n+1][k] = '.' ;
for ( int i = 1 ; i < n+1 ; i++ ) for ( int k = 1 ; k < m+1 ; k++ ) cin >> a[i][k] ;
int one = 0 , two = 0 , three = 0 , four = 0 , five = 0 ;
for ( int i = 0 ; i < n+2 ; i++ )
{
for ( int k = 0 ; k < m+2 ; k++ )
{
if ( a[i][k] != '.' )
{
if ( a[i][k+1] == a[i][k] && a[i][k+2] == a[i][k] && a[i][k+3] == a[i][k] )
{
two++ ;
a[i][k] = '.' ; a[i][k+1] = '.' ; a[i][k+2] = '.' ; a[i][k+3] = '.' ;
}
else if ( a[i+1][k] == a[i][k] && a[i+2][k] == a[i][k] && a[i+3][k] == a[i][k] )
{
two++ ;
a[i][k] = '.' ; a[i+1][k] = '.' ; a[i+2][k] = '.' ; a[i+3][k] = '.' ;
}
else if ( a[i][k+1] == a[i][k] && a[i+1][k] == a[i][k] && a[i+1][k+1] == a[i][k] )
{
one++ ;
a[i][k] = '.' ; a[i+1][k] = '.' ; a[i][k+1] = '.' ; a[i+1][k+1] = '.' ;
}
else if ( a[i][k+1] == a[i][k] && a[i+1][k] == a[i][k] && a[i+1][k-1] == a[i][k] )
{
three++ ;
a[i][k] = '.' ; a[i][k+1] = '.' ; a[i+1][k] = '.' ; a[i+1][k-1] = '.' ;
}
else if ( a[i+1][k] == a[i][k] && a[i+1][k+1] == a[i][k] && a[i+2][k+1] == a[i][k] )
{
three++ ;
a[i][k] = '.' ; a[i+1][k] = '.' ; a[i+1][k+1] = '.' ; a[i+2][k+1] = '.' ;
}
else if ( a[i][k+1] == a[i][k] && a[i+1][k+1] == a[i][k] && a[i+1][k+2] == a[i][k] )
{
four++ ;
a[i][k] = '.' ; a[i][k+1] = '.' ; a[i+1][k+1] = '.' ; a[i+1][k+2] = '.' ;
}
else if ( a[i+1][k] == a[i][k] && a[i+1][k-1] == a[i][k] && a[i+2][k-1] == a[i][k] )
{
four++ ;
a[i][k] = '.' ; a[i+1][k] = '.' ; a[i+1][k-1] = '.' ; a[i+2][k-1] = '.' ;
}
else if ( a[i][k+1] == a[i][k] && a[i][k+2] == a[i][k] && ( a[i+1][k+1] == a[i][k] || a[i-1][k+1] == a[i][k] ) )
{
five++ ;
if ( a[i+1][k+1] == a[i][k] ) a[i+1][k+1] = '.' ;
else if ( a[i-1][k+1] == a[i][k] ) a[i-1][k+1] = '.' ;
a[i][k] = '.' ; a[i][k+1] = '.' ; a[i][k+2] = '.' ;
}
else if ( a[i+1][k] == a[i][k] && a[i+2][k] == a[i][k] && ( a[i+1][k+1] == a[i][k] || a[i+1][k-1] == a[i][k] ) )
{
five++ ;
if ( a[i+1][k+1] == a[i][k] ) a[i+1][k+1] = '.' ;
else if ( a[i+1][k-1] == a[i][k] ) a[i+1][k-1] = '.' ;
a[i][k] = '.' ; a[i+1][k] = '.' ; a[i+2][k] = '.' ;
}
}
}
}
cout << one << "\n" << two << "\n" << three << "\n" << four << "\n" << five << "\n" ;
return 0 ;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
