[CSP2020]儒略日

儒略日

题解

其实是挺简单的一道模拟题,但对于笔者这种考场上打了2h,结果最后2min加上一行代码挂了60pts的人来说确实不大友好

这道题主要就是涉及到闰年的判断与年份的增长,只有儒略历与格里高利历之间的转化有一些难办。于是我们可以将整个历史通过1582年分作两段。向前的一段最大闰年是一100年为单位的,而之后是以400年为单位。

我们就一段一段的暴力增长,类似倍增,先是100年,再是4年,最后是一年,之后再分一天一天的来增长。而在1582年后,就直接先将400年的涨完,在涨剩下年份。

时间复杂度是明显可以过的,这里就不算了。

源码

#include<cstdio>
#include<cstring>
#include<c
posted @ 2022-05-17 16:34  StaroForgin  阅读(38)  评论(0)    收藏  举报  来源