Lavida 1137 테트리스

1 분 소요

문제 설명Permalink

테트리스 게임에서는 한 행이 모두 블록으로 채워지면 그 블록은 사라지고 그에 따른 점수를 얻게 된다. 예를 들어 왼쪽의 모양과 같은 테트리스 상태가 있다면 상태는 오른쪽과 같이 바뀌게 된다.

screen

입력 설명Permalink

맨 처음 테스트 케이스의 개수 T(1 <= T <= 100)를 입력받는다. 그 뒤에 테스트 케이스의 개수만큼 맵의 행 R을 입력받는다. 그 다음 테트리스 맵의 정보를 입력받는데 @는 블록이고 .는 블록이 없는 공간이다. 열은 항상 10으로 고정되어 있다고 가정한다. (5 <= R <= 20)

출력 설명Permalink

맨 처음 테스트 케이스의 개수 T(1 <= T <= 100)를 입력받는다. 그 뒤에 테스트 케이스의 개수만큼 맵의 행 R을 입력받는다. 그 다음 테트리스 맵의 정보를 입력받는데 @는 블록이고 .는 블록이 없는 공간이다. 열은 항상 10으로 고정되어 있다고 가정한다. (5 <= R <= 20)

입력 예시Permalink

1
5
.@...@....
@@@@@@@@@@
.@@@@@@.@@
@@@@@@@@@@
.@@@.@@@@@

출력 예시Permalink

1
5
.@...@....
@@@@@@@@@@
.@@@@@@.@@
@@@@@@@@@@
.@@@.@@@@@

코드1Permalink

#include <stdio.h>

int main() {
    int testcase,a,j,k, count = 0;
    char arr[20][11];
    scanf("%d", &testcase);
    for (int i = 0; i < testcase; i++)
    {
        scanf("%d", &a);
        for (k = 0; k < a; k++)
        {
            scanf("%s", &arr[k]);
        }
        for (k = 0; k < a; k++)
        {
            for (int c = 0;  c < 10; c++) {
                if (arr[k][c] == '@') {
                    count++;
                }
            }
            if (count != 10) {
                for (int c = 0; c < 10; c++) {
                    printf("%c", arr[k][c]);
                }
                printf("\n");
            }
            count = 0;
        }
    }
    return 0;
}

코드2Permalink

#include <stdio.h>

int main() {
    int testcase,a,j,k, count = 0;
    char arr[20][11];
    scanf("%d", &testcase);
    for (int i = 0; i < testcase; i++)
    {
        scanf("%d", &a);
        for (k = 0; k < a; k++)
        {
            scanf("%s", &arr[k]);
        }
        for (k = 0; k < a; k++)
        {
            for (int c = 0; c < 10; c++) {
                if (arr[k][c] == '.') {
                    count = 1;
                    break;
                }
            }
            if (count == 1 ) {
                for (int c = 0; c < 10; c++) {
                    printf("%c", arr[k][c]);
                }
                printf("\n");
            }
            count = 0;
        }
    }
    return 0;
}

나 : sayPermalink

여러분 상상을 하세요.

댓글남기기