#P2006. 擎小柱的幸运日

擎小柱的幸运日

题目描述

擎小柱最近运气不佳,为了转运,他需要找到离今天最近的“幸运日”。幸运日必须满足:

  1. 日期格式转换:将日期的月份和日分别格式化为两位数(不足两位补前导零),组成一个4位整数。
    • 例如:1月8日 → 月份01 + 日08 → 整数108
  2. 回文数规则:该4位整数必须是回文数,即该数反向排列后等于该数本身。
    • 例如:121的反向是121,= 121,因此121是完全数;但108的反向是801,≠ 108,无效。
  3. 最近原则:幸运日必须是未来的日期(包括今天),且离今天最近。
    • 日期范围:月份1–12,日1–31(自动跳过无效日期,如2月30日)。
    • 若今天满足条件,则输出今天;否则搜索未来日期(同年或次年)。

输入格式

  • 一行,以.分隔的三个整数:年.月.日(例如:2025.1.1)。

输出格式

  • 一行,幸运日的日期,格式与输入相同(例如:2025.01.28)。
  • 保证在2000–2100年内存在解(实际完全数如28对应0228,但需验证日期有效性)。
2025.12.29
2026.01.01

解释:2025年12月29日的最近幸运日是1月1日。月份01和日01组成101,其反向=101 = 101

2025.5.10
2025.05.15