#PTXB2518. 【2025年莆田市C++专项选拔线下决赛-小学组】T2:好日子

【2025年莆田市C++专项选拔线下决赛-小学组】T2:好日子

题目描述

小 Y 同学刚学习了因数的概念,看着墙上的日历 2025/05/112025/05/11,他不禁陷入了沉思。

每一天对应的年月日都可以看作一个 88 位的正整数,格式为 YYYYMMDDYYYYMMDD,其中 YYYYYYYY 表示年份,MMMM 表示月份,DDDD 表示日期;去掉年份,MMDDMMDD 也可以看作一个 44 位的正整数(可以有前置 00)。

假如,由当天年月日组成的 88 位正整数和 44 位正整数恰好有相同的因数个数,那么这个日期就叫做好日子

例如 102402291024022902290229 的因数个数都是 22,所以 10241024222929 日是一个好日子

现在给出一个年份 nn,请你计算出这个年份中有多少个好日子

闰年判断规则如下:

  • 普通闰年:年份能被 44 整除,但不能被 100100 整除。
  • 世纪闰年:年份能被 400400 整除。

满足以上任意一条规则的年份就是闰年,否则是平年。

输入格式

一行一个整数 nn,表示年份。

输出格式

一行一个整数,表示这个年份中有多少个好日子

样例

2024
72
1000
71

数据范围

对于 40%40 \% 的数据, 1n501 \leq n \leq 50

对于 100%100 \% 的数据,1n20251 \leq n \leq 2025