結果

問題 No.1851 Regular Tiling
コンテスト
ユーザー boatmuscles
提出日時 2022-02-25 22:51:55
言語 C++17
(gcc 15.2.0 + boost 1.89.0)
コンパイル:
g++-15 -O2 -lm -std=c++17 -Wuninitialized -DONLINE_JUDGE -o a.out _filename_
実行:
./a.out
結果
AC  
実行時間 28 ms / 2,000 ms
コード長 1,159 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 422 ms
コンパイル使用メモリ 41,200 KB
実行使用メモリ 6,400 KB
最終ジャッジ日時 2026-06-25 08:58:11
合計ジャッジ時間 1,868 ms
ジャッジサーバーID
(参考情報)
judge3_0 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 14
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

#include<cstdio>
#define rep(i, n) for (int i = 0; i < (int)(n); i++)

int main(){
    int testcase_i;
    scanf("%d", &testcase_i);
    for (int ___ = 0; ___ < testcase_i; ___++){
        int H, W;
        scanf("%d %d", &H, &W);
        char pattern[3][3];
        if(H%3 == 1){
            if(W%3 == 1){
                char tmp[3][3] = {{'0','1','1'},{'1','2','2'},{'1','2','2'}};
                rep(i,3) rep(j,3) pattern[i][j] = tmp[i][j];
            }else{
                char tmp[3][3] = {{'1','1','0'},{'2','2','1'},{'2','2','1'}};
                rep(i,3) rep(j,3) pattern[i][j] = tmp[i][j];
            }
        }else if(W%3 == 1){
            char tmp[3][3] = {{'1','2','2'},{'1','2','2'},{'0','1','1'}};
            rep(i,3) rep(j,3) pattern[i][j] = tmp[i][j];
        }else{
            char tmp[3][3] = {{'2','2','1'},{'2','2','1'},{'1','1','0'}};
            rep(i,3) rep(j,3) pattern[i][j] = tmp[i][j];
        }
        for (int i = 0; i < H; i++)
        {
            for (int j = 0; j < W; j++)
            {
                printf("%c", pattern[i%3][j%3]);
                printf(j < W-1 ? " " : "\n");
            }
        }
    }
}
0