問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!
西暦y年のm月のカレンダーを表示してください。
カレンダーは、日曜日を週の始まりとした曜日を表す7つの列と6行からなる表です。
カレンダーのi行j列目には、以下のいずれかの文字列が詰められています。
・2桁の数字
・半角スペース1文字と1桁の数字
・数値を表示しない場合は、2つの半角スペース
また、列の間は1つの半角スペースで区切られます。
ただし、各月の日数は以下のように決まることに注意してください。
・4, 6, 9, 11月は30日
・2月は閏年ならば29日、そうでなければ28日
・それ以外の月は31日
ただし、閏年は次のような年のことをいいます。
・西暦が4で割り切れる年は閏年
・ただし、100で割り切れる年は平年
・ただし、400で割り切れる年は閏年
ただし、1800年1月1日は水曜日です。(現実のカレンダーです)
以下の形式で、数値yとmが与えられます。
y m
6行でカレンダーを表示してください。
各行はちょうど20文字からなります。
例えば2019年4月のカレンダーはこのようになります。
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
すべてのテストケースにおいて、以下の条件を満たします。
・1800≦y≦3000
・1≦m≦12
2019 4
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
1800 1
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
1800 2
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
3000 12
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