No.3649 Top View of Jenga
レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限
: 1024 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 68
作問者 :
Rino-program
/ テスター :
gomaazarasi
p-adic
とある理系大学生の日常
タグ : / 解いたユーザー数 68
作問者 :
とある理系大学生の日常
問題文最終更新日: 2026-08-04 17:05:36
問題文
あなたは $N$ 本の木製ブロックを用いてタワーを建設しています。
タワーを真上から見ると、縦 $3$ マス、横 $3$ マスの合計 $9$ マスのグリッドに分かれています。このグリッドの上から $i$ 行目、左から $j$ 列目のマスを $(i, j)$ と表します。
ブロックは縦 $3$ マス、横 $1$ マス分の大きさで 自由に回転をさせることができます。 ブロックがなくなるまで以下のように操作を行います。
- タワーはブロックを積み上げて作ります。$h = 1, 2, \dots$ 段目は以下のように積みます。
$h$ が奇数の時
- $j = 1, 2, 3$ の順にそれぞれ $ ( 1 , j ) , ( 2 , j ) , ( 3 , j ) $
の $3$ マスを覆うようにブロックを $1$ 本ずつ積みます。
途中でブロックがなくなった場合、そこで操作を終了します。 - $3$ 本全てを積み終えたら $h+1$ 段目に移行する。
- $j = 1, 2, 3$ の順にそれぞれ $ ( 1 , j ) , ( 2 , j ) , ( 3 , j ) $
の $3$ マスを覆うようにブロックを $1$ 本ずつ積みます。
$h$ が偶数の時
- $i = 1, 2, 3$ の順にそれぞれ $ ( i , 1 ) , ( i , 2 ) , ( i , 3 ) $
の $3$ マスを覆うようにブロックを $1$ 本ずつ積みます。
途中でブロックがなくなった場合、そこで操作を終了します。 - $3$ 本全てを積み終えたら $h+1$ 段目に移行する。
- $i = 1, 2, 3$ の順にそれぞれ $ ( i , 1 ) , ( i , 2 ) , ( i , 3 ) $
の $3$ マスを覆うようにブロックを $1$ 本ずつ積みます。
$N$ 本のブロックを全て積み終えたとき、真上から見た $9$ つの各マスそれぞれについて、何本のブロックが積み重なっているかを求めてください。
制約
- $1 \le N \le 10^{12}$
- $N$ は整数である
入力
入力は以下の形式で標準入力から与えられる。
$N$
出力
出力は $3$ 行からなる。 $i$ 行目には、マス $(i, 1), (i, 2), (i, 3)$ に重なっているブロックの本数を空白区切りで出力せよ。
最後に改行してください。
答えは $32$ bit 整数型(int など)に収まらない可能性があることに注意してください。
サンプル
サンプル1
入力
1
出力
1 0 0 1 0 0 1 0 0
$1$ 本目のブロックは奇数段目の $1$ 本目なので、左の列に縦置きされます。したがって、一番左の列の $3$ マスにそれぞれ $1$ 本ずつブロックが置かれた状態になります。
サンプル2
入力
4
出力
2 2 2 1 1 1 1 1 1
サンプル3
入力
11
出力
4 4 4 4 4 4 3 3 3
サンプル4
入力
1000000000000
出力
333333333334 333333333334 333333333334 333333333333 333333333333 333333333333 333333333333 333333333333 333333333333
入出力が $32$ bit 整数型(int など)に収まらない可能性があることに注意してください。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。