제출 #1216117

#제출 시각아이디문제언어결과실행 시간메모리
1216117cuenta_verdaderaTetris (COCI17_tetris)C++20
80 / 80
0 ms328 KiB
#include <bits/stdc++.h>
using namespace std;

long long n, m;
char v[100][100];

bool b(int i, int j) {
    return i >= 0 && j >= 0 && i < n && j < m;
}

int main() {
    cin >> n >> m;
    for (int i = 0; i < n; i++)
        for (int j = 0; j < m; j++)
            cin >> v[i][j];

    long long c = 0, l =0,z =0, s =0, t=0;
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < m; j++) {
            char ch = v[i][j];
            if (ch == '.') continue;
            if (b(i+1, j+1) &&
                ch == v[i][j+1] && ch == v[i+1][j] && ch == v[i+1][j+1]) {
                c++;
            }
            if (b(i, j+3) &&
                ch == v[i][j+1] && ch == v[i][j+2] && ch == v[i][j+3]) {
                l++;
            }
            if (b(i+3, j) &&
                ch == v[i+1][j] && ch == v[i+2][j] && ch == v[i+3][j]) {
                l++;
            }
            if (b(i-1, j+2) &&
                ch == v[i][j+1] && ch == v[i-1][j+1] && ch == v[i-1][j+2]) {
                z++;
            }
            if (b(i+2, j+1) &&
                ch == v[i+1][j] && ch == v[i+1][j+1] && ch == v[i+2][j+1]) {
                z++;
            }
            if (b(i+1, j+2) &&
                ch == v[i][j+1] && ch == v[i+1][j+1] && ch == v[i+1][j+2]) {
                s++;
            }
            if (b(i+2, j-1) &&
                ch == v[i+1][j] && ch == v[i+1][j-1] && ch == v[i+2][j-1]) {
                s++;
            }
            if (b(i-1, j+2) &&
                ch == v[i][j+1] && ch == v[i][j+2] && ch == v[i-1][j+1]) {
                t++;
            }
            if (b(i+1, j+2) &&
                ch == v[i][j+1] && ch == v[i][j+2] && ch == v[i+1][j+1]) {
                t++;
            }
            if (b(i+2, j+1) &&
                ch == v[i+1][j] && ch == v[i+2][j] && ch == v[i+1][j+1]) {
                t++;
            }
            if (b(i+2, j-1) &&
                ch == v[i+1][j] && ch == v[i+2][j] && ch == v[i+1][j-1]) {
                t++;
            }
        }
    }

    cout << c << '\n';
    cout << l << '\n';
    cout << z << '\n';
    cout << s << '\n';
    cout << t << '\n';

    return 0;
}

#Verdict Execution timeMemoryGrader output
Fetching results...