问题2641--制作自己的日历

2641: 制作自己的日历

[命题人 : ]
时间限制 : 1 sec  内存限制 : 128 MB

提交

题目描述

SSSurFing每个月事情都很多,在每月月初,他会为自己制作日历。

每月的每一天都正好用三个字符表示:

  • 如果天数是一位数,则表示为 ..X。例如:数字7 被表示为 ..7
  • 如果天数是两位数,那么它表示为 .XY。例如:数字17被表示为 .17

日历的每一行代表一个星期,每个星期由7天组成。如果一周没有所有的7天(因为有可能这个月不是从星期一开始的,或者不是在星期日结束的),那么缺失的日子就用 ... 表示。

SSSurFing也希望他的日历是漂亮的。他将用以下方式来装饰它:在上下两边填上 -(ASCII 45),左右两边填上 |(ASCII 124),而四个角落用 +(ASCII 43)。

你的任务是确定SSSurFing日历的格式,如果它有n天,并且每月的第一天是一周的第x天。例如,如果x=1,这个月就从星期一开始,如果 x=5,就从星期五开始。

我们假设一周的第一天是星期一。

输入

一行,包含整数n和x,表示该月的天数,以及该月的起始日。(1≤n≤99,1≤x≤7)

输出

输出SSSurFing日历的样子。

样例输入 Copy

31 3

样例输出 Copy

+---------------------+
|........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......|
+---------------------+

提示

样例1:
1 5
+---------------------+
|..............1......|
+---------------------+
样例2:
28 7
+---------------------+
|....................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...|
+---------------------+

来源/分类