結果

問題 No.1851 Regular Tiling
ユーザー ripity
提出日時 2022-02-25 21:55:48
言語 Java
(openjdk 23)
結果
AC  
実行時間 558 ms / 2,000 ms
コード長 1,389 bytes
コンパイル時間 2,267 ms
コンパイル使用メモリ 79,764 KB
実行使用メモリ 63,900 KB
最終ジャッジ日時 2024-07-03 16:45:14
合計ジャッジ時間 8,964 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 14
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

import java.util.*;
import java.io.*;
public class Main {
public static Scanner sc = new Scanner(System.in);
public static PrintWriter pw = new PrintWriter(System.out);
public static void main(String[] args) {
int t = sc.nextInt();
while( t > 0 ) {
solve();
t--;
}
pw.flush();
}
static void solve() {
int H = sc.nextInt();
int W = sc.nextInt();
if( H == 1 ) {
int[] g = {1,1,0};
int id = W%3 == 1 ? 2 : 0;
for( int i = 0; i < W; i++ ) {
pw.print(g[(id+i)%3]+" ");
}
pw.println();
}else if( W == 1 ) {
int[] g = {1,1,0};
int id = H%3 == 1 ? 2 : 0;
for( int i = 0; i < H; i++ ) {
pw.println(g[(id+i)%3]);
}
}else {
int[][] g = {
{2,2,1},
{2,2,1},
{1,1,0}
};
int idi = H%3 == 1 ? 2 : 0;
int idj = W%3 == 1 ? 2 : 0;
for( int i = 0; i < H; i++ ) {
for( int j = 0; j < W; j++ ) {
pw.print(g[(idi+i)%3][(idj+j)%3]+" ");
}
pw.println();
}
}
pw.println();
}
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0