提出詳細


ソースコード

#include <stdio.h>
#include<string.h>
int main() {
    int c;
    int block_type;
    int size[4];
    int map[10][10] = {};
    int height;
    int width;
    int count = 0;
    int flag = 0;
    int a = 0;
    scanf("%d",&c);
    for(int iii=1;iii<=c;iii++){
        scanf("%d",&height);
        scanf("%d",&width);
        for(int ii = 0;ii < width; ii++){
            for(int i = 0;i < height; i++){
                scanf("%d",&block_type);
                map[ii][i] = block_type;
            }
        }
        for(int ii = 0;ii < width; ii++){
                for(int i = 0;i < height; i++){
                    if(map[ii][i] == 4){
                        map[ii][i] = 1;
                    }
                    //printf("%d ",map[ii][i]);
                }
                //printf("\n");
            }
            //printf("\n");
        while(a == 0){
            for(int ii = 0;ii < width; ii++){
                for(int i = 0;i < height; i++){
                    if(map[ii][i] == 1){
                        flag = 1;
                        if(ii > 0){
                            if(map[ii - 1][i] == 0){
                               map[ii - 1][i] = 4; 
                            }
                            else if(map[ii - 1][i] == 2){
                                a = 1;
                            }
                        }
                        if(ii < width - 1){
                            if(map[ii + 1][i] == 0){
                               map[ii + 1][i] = 4; 
                            }
                            else if(map[ii + 1][i] == 2){
                                a = 1;
                            }
                        }
                        if(i < height - 1){
                            if(map[ii][i + 1] == 0){
                               map[ii][i + 1] = 4; 
                            }
                            else if(map[ii][i + 1] == 2){
                                a = 1;
                            }
                        }
                        if(i > 0){
                            if(map[ii][i - 1] == 0){
                               map[ii][i - 1] = 4; 
                            }
                            else if(map[ii][i - 1] == 2){
                                a = 1;
                            }
                        }
                        map[ii][i] = 3; 
                    }
                }
            }
            for(int ii = 0;ii < width; ii++){
                for(int i = 0;i < height; i++){
                    if(map[ii][i] == 4){
                        map[ii][i] = 1;
                    }
                    //printf("%d ",map[ii][i]);
                }
                //printf("\n");
            }
            //printf("\n");
            count++;
            if(flag == 0){
                count = 0;
                a = 1;
            }
            flag = 0;
        }
        printf("Case #%d:\n",iii);
        printf("%d\n",count);
        a = 0;
        flag = 0;
        count = 0;
    }
    return 0;
}

提出情報

提出時間 2019-12-09 20:08:28
問題 G - ボルダリング
ユーザ名 bukkorokoroponM
状態 正解
正解率 50/50
提出出力結果

テストケース情報

# 状態 詳細情報
テストケース 1 正解 詳細を見る
テストケース 2 正解 詳細を見る
テストケース 3 正解 詳細を見る
テストケース 4 正解 詳細を見る
テストケース 5 正解 詳細を見る
テストケース 6 正解 詳細を見る
テストケース 7 正解 詳細を見る
テストケース 8 正解 詳細を見る
テストケース 9 正解 詳細を見る
テストケース 10 正解 詳細を見る
テストケース 11 正解 詳細を見る
テストケース 12 正解 詳細を見る
テストケース 13 正解 詳細を見る
テストケース 14 正解 詳細を見る
テストケース 15 正解 詳細を見る
テストケース 16 正解 詳細を見る
テストケース 17 正解 詳細を見る
テストケース 18 正解 詳細を見る
テストケース 19 正解 詳細を見る
テストケース 20 正解 詳細を見る
テストケース 21 正解 詳細を見る
テストケース 22 正解 詳細を見る
テストケース 23 正解 詳細を見る
テストケース 24 正解 詳細を見る
テストケース 25 正解 詳細を見る
テストケース 26 正解 詳細を見る
テストケース 27 正解 詳細を見る
テストケース 28 正解 詳細を見る
テストケース 29 正解 詳細を見る
テストケース 30 正解 詳細を見る
テストケース 31 正解 詳細を見る
テストケース 32 正解 詳細を見る
テストケース 33 正解 詳細を見る
テストケース 34 正解 詳細を見る
テストケース 35 正解 詳細を見る
テストケース 36 正解 詳細を見る
テストケース 37 正解 詳細を見る
テストケース 38 正解 詳細を見る
テストケース 39 正解 詳細を見る
テストケース 40 正解 詳細を見る
テストケース 41 正解 詳細を見る
テストケース 42 正解 詳細を見る
テストケース 43 正解 詳細を見る
テストケース 44 正解 詳細を見る
テストケース 45 正解 詳細を見る
テストケース 46 正解 詳細を見る
テストケース 47 正解 詳細を見る
テストケース 48 正解 詳細を見る
テストケース 49 正解 詳細を見る
テストケース 50 正解 詳細を見る