| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 138878 | vladciuperceanu | Tetris (COCI17_tetris) | C++14 | 2 ms | 380 KiB | 
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <iostream>
using namespace std;
int n,m,i,j,sol[5];
char a[15][15];
struct figura
{
    int n;
    int m;
    int mat[4][4];
};
struct tip
{
    int numar;
    figura fig[5];
};
tip f[5] =
{
    {
        1,
        {
            {
                2, 2,
                {
                    {1, 1, 0, 0},
                    {1, 1, 0, 0},
                    {0, 0, 0, 0},
                    {0, 0, 0, 0}
                }
            }
        }
    },
    {
        2,
        {
            {
                1, 4,
                {
                    {1, 1, 1, 1},
                    {0, 0, 0, 0},
                    {0, 0, 0, 0},
                    {0, 0, 0, 0}
                }
            },
            {
                4, 1,
                {
                    {1, 0, 0, 0},
                    {1, 0, 0, 0},
                    {1, 0, 0, 0},
                    {1, 0, 0, 0}
                }
            }
        }
    },
    {
        2,
        {
            {
                2, 3,
                {
                    {0, 1, 1, 0},
                    {1, 1, 0, 0},
                    {0, 0, 0, 0},
                    {0, 0, 0, 0}
                }
            },
            {
                3, 2,
                {
                    {1, 0, 0, 0},
                    {1, 1, 0, 0},
                    {0, 1, 0, 0},
                    {0, 0, 0, 0}
                }
            }
        }
    },
    {
        2,
        {
            {
                2, 3,
                {
                    {1, 1, 0, 0},
                    {0, 1, 1, 0},
                    {0, 0, 0, 0},
                    {0, 0, 0, 0}
                }
            },
            {
                3, 2,
                {
                    {0, 1, 0, 0},
                    {1, 1, 0, 0},
                    {1, 0, 0, 0},
                    {0, 0, 0, 0}
                }
            }
        }
    },
    {
        4,
        {
            {
                2, 3,
                {
                    {0, 1, 0, 0},
                    {1, 1, 1, 0},
                    {0, 0, 0, 0},
                    {0, 0, 0, 0}
                }
            },
            {
                3, 2,
                {
                    {0, 1, 0, 0},
                    {1, 1, 0, 0},
                    {0, 1, 0, 0},
                    {0, 0, 0, 0}
                }
            },
            {
                2, 3,
                {
                    {1, 1, 1, 0},
                    {0, 1, 0, 0},
                    {0, 0, 0, 0},
                    {0, 0, 0, 0}
                }
            },
            {
                3, 2,
                {
                    {1, 0, 0, 0},
                    {1, 1, 0, 0},
                    {1, 0, 0, 0},
                    {0, 0, 0, 0}
                }
            }
        }
    }
};
int main()
{
    cin >> n >> m;
    for (i=0; i<n; i++)
        for (j=0; j<m; j++)
            cin >> a[i][j];
    for (int tipar=0; tipar<5; tipar++)
        for (int rot=0; rot<f[tipar].numar; rot++)
        {
            int lin = f[tipar].fig[rot].n;
            int col = f[tipar].fig[rot].m;
            for (i=0; i+lin-1<n; i++)
                for (j=0; j+col-1<m; j++)
                    for (char litera='a'; litera<='z'; litera++)
                    {
                        int ok = 0;
                        for (int ii=0; ii<lin; ii++)
                            for (int jj=0; jj<col; jj++)
                                if ((f[tipar].fig[rot].mat[ii][jj] == 0 && a[i+ii][j+jj] == litera) || (f[tipar].fig[rot].mat[ii][jj] == 1 && a[i+ii][j+jj] != litera))
                                    ok = 1;
                        if (ok == 0)
                            sol[tipar]++;
                    }
        }
    for (i=0; i<5; i++)
        cout << sol[i] << "\n";
    return 0;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
