Codeforces 899B Months and Years

题目大意

给定 \(n\)\(1\le n\le 24\))个正整数 \(a_1,\dots, a_n\) 判断 \(a_1\)\(a_n\) 是否可能为连续 \(n\) 个月份的天数。

解法

由于 \(n\le 24\),这 \(n\) 个月包含在至多 3 年内,而三年的可能情况有:
闰年—平年—平年
平年—闰年—平年
平年—平年—闰年
平年—平年—平年

将这四种模式合并起来:
平年—平年—平年—闰年—平年—平年

将输入月份序列在上述模式中做匹配。

比赛时我的错误做法

没有考虑到这些月份可能包含在 3 年内,误认为包含在至多两年内,故而我采用的模式为:
平年—闰年—平年—平年

posted @ 2017-12-17 19:33  Pat  阅读(209)  评论(0编辑  收藏  举报