#205. 连休

连休

题面翻译

2011年,AtCoder国家的高桥君作出了重大的决定。 决定变更国民节日相关法律,增加假日! 【无意义内容被和谐了】 你的任务是计算2012年“连休的最大天数”。 以下是“连休”的定义:

AtCoder国家使用的日历遵循阳历。 “连休”是指连续的休息日 星期六、星期日、节日、调休假日相当于“休息日” 如果“节日”被指定为与其他休息日相同的日子,则必须设置“调休假日” “调休假日”按照节日的时间顺序决定,成为该节日以来最近的平日(除休息日以外的日子) 已知2012年1月11日是星期日

题目描述

2011 2011 年、AtCoder AtCoder 国の高橋首相はある重大な決定を行った。 その決定とは...法改正である。国民の祝日に関する法律を変更し、休日を増やすことにした!! 国民の創造性を尊重するその決定が、霞が関を魔境へと変えたッ!

あなたは霞が関の国土交通省に勤務する職員であり、この法改正により上司から新たな任務を与えられた。 その任務とは、2012 2012 年の「連休の最大日数」を計算することである。 連休の大きさを事前に計算することで国民の行動を予想し、高速道路の部分的な値下げを行い、経済を活性させるためだ。 したがって、あなたに失敗することは許されない。国民の行動を正確に予想できなくなるからだ。

以下に、「連休」の定義と諸注意を記す。

  1. AtCoder AtCoder 国が使用する暦はグレゴリオ暦に従う。
  2. 「連休」とは、「休日」が連続して続くことである。
  3. 「土曜日」「日曜日」「祝日」「振替休日」が「休日」に相当する。
  4. 「祝日」が他の休日と同じ日に指定されていた場合、「振替休日」を必ず設置する。
  5. 「振替休日」は祝日の時系列順に決定していき、その祝日以降最も近い平日(休日を除いた日)となる。
  6. 2012 2012 1 1 1 1 日は日曜日である。

入力は以下の形式で標準入力から与えられる。 > N N m1 m_{1} /d1 d_{1} m2 m_{2} /d2 d_{2} : : : : mn m_{n} /dn d_{n}

  • 1 1 行目には祝日の日数を表す整数 N N が与えられ、 0N366 0≦N≦366 を満たす。
  • 2 2 行目から N+1 N+1 行目までの N N 行で祝日の日付が与えられる。
  1. mi m_{i} i(1i366) i(1≦i≦366) 番目に与えられる祝日の月で、 1mi12 1≦m_{i}≦12 を満たす。
  2. di d_{i} i(1i366) i(1≦i≦366) 番目に与えられる祝日の日で、
  3. mi = 2 m_{i}\ =\ 2 のとき、 1di29 1≦d_{i}≦29 を満たす。
  4. mi = (4, 6, 9, 11) m_{i}\ =\ (4,\ 6,\ 9,\ 11) のとき、 1di30 1≦d_{i}≦30 を満たす。
  5. mi = (1, 3, 5, 7, 8, 10, 12) m_{i}\ =\ (1,\ 3,\ 5,\ 7,\ 8,\ 10,\ 12) のとき、 1di31 1≦d_{i}≦31 を満たす。
  6. mi m_{i} di d_{i} はともに整数である。
  7. mi m_{i} di d_{i} は必ず/で区切られて与えられる。
  8. 祝日は時系列順に与えられるとは限らないことに注意せよ。ただし、同じ日付が複数与えられないことは保証されている。

法改正後における 2012 2012 年の連休の最大日数を出力せよ。 出力は標準出力におこない、末尾には改行をいれること。

1
1/9
3
  • 1/7(土),1/8(日),1/9(月)の 3 3 連休が最長です。
1
1/10
2
  • 1/10(火)が祝日となり、1/7(土),1/8(日)などの 2 2 連休が最長です。
1
1/7
3
  • 1/7は土曜日なので、以降で最も近い平日である1/9が振替休日になります。
  • よって、1/7(土)、1/8(日)、1/9(月)の3連休が最長です。
2
1/7
1/9
4
  • 1/7は土曜日なので振替休日を以降に設定したく、1/9が祝日なので1/10が振替休日になります。
  • よって、1/7(土)、1/8(日)、1/9(月)、1/10(火)の4連休が最長です。

输入格式

输出格式