답안 #141665

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
141665 2019-08-08T17:18:23 Z Divia Tetris (COCI17_tetris) C++14
80 / 80
2 ms 376 KB
#include <iostream>
using namespace std;
struct config{
    int n,m,a[4][4];
};
struct piesa{
    int rot;
    config fig[4];
};
piesa 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 }}},
    {2,3,{
        { 1, 1, 1, 0 },
        { 0, 1, 0, 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 }}},
    {3,2,{
        { 1, 0, 0, 0 },
        { 1, 1, 0, 0 },
        { 1, 0, 0, 0 },
        { 0, 0, 0, 0 }}}}}
};
int n,m,i,j,r,sol[5],l,c,t,ok;
char a[10][10];
int main(){
    cin>>n>>m;
    for(i=0;i<n;i++)
        for(j=0;j<m;j++)
            cin>>a[i][j];
    for(t=0;t<5;t++)
        for(r=0;r<f[t].rot;r++){
            l=f[t].fig[r].n;
            c=f[t].fig[r].m;
            for(int icolt=0;icolt+l-1<n;icolt++)
                for(int jcolt=0;jcolt+c-1<m;jcolt++)
                    for(char litera='a';litera<='z';litera++){
                        for(ok=1,i=0;i<l;i++)
                            for(j=0;j<c;j++){
                                if(f[t].fig[r].a[i][j]==1 && a[i+icolt][j+jcolt]!=litera)ok=0;
                                if(f[t].fig[r].a[i][j]==0 && a[i+icolt][j+jcolt]==litera)ok=0;
                            }
                        sol[t]+=ok;
            }}
    for(i=0;i<5;i++)
        cout<<sol[i]<<"\n";
    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 252 KB Output is correct
2 Correct 2 ms 256 KB Output is correct
3 Correct 2 ms 376 KB Output is correct
4 Correct 2 ms 256 KB Output is correct
5 Correct 2 ms 256 KB Output is correct
6 Correct 2 ms 256 KB Output is correct
7 Correct 2 ms 376 KB Output is correct
8 Correct 2 ms 256 KB Output is correct
9 Correct 2 ms 252 KB Output is correct
10 Correct 2 ms 256 KB Output is correct