#arc0102. [arc010_2]超大型連休
[arc010_2]超大型連休
问题文
2011年,AtCoder国的高桥首相做出了一项重大决定。
这个决定是...改革法律。他决定修改与国民假日有关的法律,增加休息日!
这个尊重国民创造力的决定使霞关变成了一个魔境!
你是霞关的国土交通省的职员,在这次法律改革中,你被上司分配了新的任务。
这个任务是计算2012年的“连休最大天数”。
通过提前计算连休的长度,预测国民的行动,部分降低高速公路费用,激活经济。
因此,你不能失败,因为这将无法准确预测国民的行动。
以下是“连休”的定义和注意事项。
- AtCoder国使用的日历是公历。
- “连休”是指“休息日”连续存在的情况。
- “周六”、“周日”、“祝日”、“补休日”都等同于“休息日”。
- 如果“祝日”与其他休息日在同一天指定,“补休日”必须设置。
- “补休日”按照祝日的时间顺序确定,是祝日之后最近的工作日(不包括休息日)。
- 2012年1月1日是星期天。
输入
从标准输入中以以下格式给出输入:N
m₁/d₁
m₂/d₂
:
:
mₙ/dₙ
- 第1行是表示祝日天数的整数N,满足0≦N≦366。
- 第2行到第N+1行依次给出N个祝日的日期。
-
mi 是第i(1≦i≦366)个给出的祝日的月份,满足1≦mi≦12。
-
di 是第i(1≦i≦366)个给出的祝日的日期,
-
当mi = 2时,满足1≦di≦29。
-
当mi = (4, 6, 9, 11)时,满足1≦di≦30。
-
当mi = (1, 3, 5, 7, 8, 10, 12)时,满足1≦di≦31。
-
mi 和 di 都是整数。
-
mi 和 di 必定由斜杠/分隔。
-
祝日不一定按照时间顺序给出,请注意不会重复给出同一天。
输出
输出2012年改革后的连休最大天数。
输出到标准输出,末尾包含换行符。
输入例子1
输出例子1
- 最长的是1/7(周六), 1/8(周日), 1/9(周一) 连休共3天。
输入例子2
输出例子2
- 1/10(星期二)是祝日,最长连休为1/7(周六),1/8(周日)等2天。
输入例子3
输出例子3
- 1/7是周六,所以最近的工作日1/9将成为补休日。
- 因此,1/7(周六),1/8(周日),1/9(周一)共3天连休。
输入例子4
输出例子4
- 1/7是周六,希望将补休日设在之后的日子上,而1/9正好是祝日,所以1/10将成为补休日。
- 因此,1/7(周六),1/8(周日),1/9(周一),1/10(周二)共4天连休。