calendar-agent / knowledge_base.md
theame's picture
Upload 8 files
ba0f779 verified

年月日知识库

  • KB_ID: kb_ymd_week_cn_cards_detail
  • Version: 2.0
  • Updated: 2026-03-27
  • Scope: 年月日基础 + 平/闰年 + 大小月/特殊月 + 日时换算 + 星期推算 + 日期推算(跨月/跨年)+ 季度天数 + 常见应用题口径
  • Retrieval: 单 Markdown 全量检索(卡片化:Title/Tags/Trigger)
  • Default_Convention:
    • 持续N天:开始当天算第1天(结束=开始+N-1)
    • 星期推算:用间隔天数 d,取 r=d mod 7
    • 未指明口径:按 Default_Convention 作答,并在结尾注明口径

全局答题输出规范

回答任何题目时,按以下结构输出(提高一致性与可解释性):

  1. 结论:先给最终答案(日期/星期/天数)
  2. 关键步骤:只写必要算式与推理(避免冗长)
  3. 口径说明:若涉及“持续N天/保质期”,必须写“是否包含当天”
  4. 检查点:简单自检一句(如“未跨月/已跨月”“余数为0所以星期不变”)

Cards(知识卡片库)

字段含义:

  • Alias:常见同义说法/检索别名(非常关键)
  • Trigger:用户真实提问句式(尽量口语)
  • Output:建议智能体最终输出的格式

CARD-001|一年有几个月

  • Title: 一年有12个月
  • Alias: 12个月 / 一年分几个月 / 一年有哪些月份
  • Tags: 年, 月, 基础概念
  • Trigger:
    • “一年有几个月?”
    • “一年到底分成几个月?”
    • “一年是不是12个月?”
    • “12个月是哪12个?”
  • Content:
    • 一年有 12 个月(1月到12月)。
  • Output:
    • “一年有12个月。”

CARD-010|平年与闰年的定义

  • Title: 平年/闰年定义(365/366天;2月28/29)
  • Alias: 平年多少天 / 闰年多少天 / 2月为什么28或29 / 闰日
  • Tags: 平年, 闰年, 2月, 年天数, 定义
  • Trigger:
    • “平年有多少天?”
    • “闰年有多少天?”
    • “闰年比平年多几天?”
    • “2月为什么有时28天有时29天?”
  • Content:
    • 平年:2月28天,全年365天。
    • 闰年:2月29天,全年366天(比平年多1天)。
  • Examples:
    • 问:闰年全年多少天?答:366天。
  • Output:
    • “平年365天(2月28天);闰年366天(2月29天)。”

CARD-020|闰年判断(重中之重)

  • Title: 闰年判断(非整百看4,整百看400)
  • Alias: 判断闰年方法 / 闰年规则 / 百年闰年 / 400年规则 / 四年一闰
  • Tags: 闰年判断, 平年判断, 整百年, 400, 4, 规则
  • Trigger:
    • “2026年是闰年吗?”
    • “怎么判断一个年份是平年还是闰年?”
    • “整百年怎么判断闰年?”
    • “能被4整除就是闰年吗?”
    • “1900为什么不是闰年?2000为什么是闰年?”
  • Steps:
    1. 看是否整百年:年份末两位是否为“00”
    2. 不是整百年
      • 能被4整除 → 闰年
      • 不能被4整除 → 平年
    3. 是整百年(末两位为00):
      • 能被400整除 → 闰年
      • 否则 → 平年
  • Content:
    • 速记:四年一闰,百年不闰,四百年再闰(公历)。
  • Examples:
    • 2024:非整百,2024÷4整除 → 闰年
    • 2025:非整百,2025÷4有余数 → 平年
    • 1900:整百,1900÷400不整除 → 平年
    • 2000:整百,2000÷400整除 → 闰年
  • Counterexamples:
    • “4的倍数一定是闰年”是错的:1900是反例(整百但不是400倍数)。
  • Pitfalls:
    • 忽略“整百年”这一关会做错世纪年。
  • Output:
    • 结论:____年是(平年/闰年)
    • 理由:是否整百年;能否被4/400整除(写一句即可)

CARD-030|大月/小月/特殊月(清单)

  • Title: 月份分类(31天大月;30天小月;2月特殊)
  • Alias: 哪些月31天 / 哪些月30天 / 大月有哪些 / 小月有哪些 / 2月算大月还是小月
  • Tags: 大月, 小月, 特殊月, 月份天数, 2月
  • Trigger:
    • “哪些月份有31天?”
    • “哪些月份只有30天?”
    • “2月算大月还是小月?”
    • “9月有几天?11月有几天?”
  • Content:
    • 大月(31天):1、3、5、7、8、10、12月(共7个)
    • 小月(30天):4、6、9、11月(共4个)
    • 特殊月:2月(平年28天/闰年29天),不计入大/小月
  • Examples:
    • 问:9月有几天?答:30天(小月)。
  • Pitfalls:
    • 2月不要归为大月或小月。
  • Output:
    • “__月是(大月/小月/特殊月),有__天。”

CARD-031|月份天数表(速查表)

  • Title: 月份天数表(1-12月)
  • Alias: 月份天数一览表 / 每个月多少天 / 天数表
  • Tags: 表格, 月份天数, 速查
  • Trigger:
    • “给我一张月份天数表”
    • “每个月分别是多少天?”
  • Content:
    月份 天数
    1 31
    2 28(平年)/ 29(闰年)
    3 31
    4 30
    5 31
    6 30
    7 31
    8 31
    9 30
    10 31
    11 30
    12 31
  • Output:
    • 若问2月:先按 CARD-020 判断平/闰年,再给28或29。

CARD-040|记忆法(口诀/数字规律/拳头法)

  • Title: 大小月记忆法(顺口溜 + 数字规律 + 拳头法)
  • Alias: 背大小月口诀 / 31天月份口诀 / 七前单月大 / 拳头记忆法
  • Tags: 口诀, 记忆法, 大月, 小月
  • Trigger:
    • “怎么记住哪些月31天?”
    • “七前单月大什么意思?”
    • “拳头记忆法怎么用?”
  • Content:
    • 顺口溜:
      • 一三五七八十腊;三十一天永不差;
      • 四六九冬三十日;平年二月二十八;闰年二月把一加。
      • 注:腊=12月,冬=11月
    • 数字规律:
      • 七前单月大,八后双月大,二月特殊算。
    • 拳头法(要点):
      • 握拳从1月开始数,凸起=31天凹陷=30天;2月单独记。
  • Output:
    • 给出一种最短可用的记忆法(优先顺口溜或清单)。

CARD-050|日与时换算

  • Title: 1日=24时(常用换算)
  • Alias: 一天多少小时 / 24小时等于几天 / 半天多少小时
  • Tags: 单位换算, 日, 时
  • Trigger:
    • “一天多少小时?”
    • “2天多少小时?”
    • “半天是多少小时?”
  • Content:
    • 1日=24时
    • 半日=12时
    • 2日=48时
    • 3日=72时
  • Output:
    • “__日=__时”(必要时附一行乘法)。

CARD-060|星期顺序(基础)

  • Title: 星期顺序(周一到周日循环)
  • Alias: 周日后面是周几 / 星期怎么排 / 周一前面是周几
  • Tags: 星期, 顺序, 基础
  • Trigger:
    • “周日后面是周几?”
    • “星期怎么排顺序?”
  • Content:
    • 周一 → 周二 → 周三 → 周四 → 周五 → 周六 → 周日 →(回到周一)
  • Examples:
    • 周日后面是周一。
  • Output:
    • 直接输出目标星期。

CARD-061|星期推算(取余三步法)

  • Title: 星期推算三步法(d、mod7、推进)
  • Alias: 间隔天数÷7看余数 / 余数星期不变 / 周几推算公式
  • Tags: 星期推算, 取余, mod7, 间隔天数
  • Trigger:
    • “已知某天是周几,过几天是周几?”
    • “从周三开始过20天是周几?”
    • “1月1日周三,1月15日周几?”
  • Steps:
    1. 计算间隔天数 d
    2. r = d mod 7
    3. 起始星期往后推 r 天(r=0星期不变)
  • Content:
    • 同月常用:从 a日到 b日间隔天数 d = b - a
  • Examples:
    • 1月1日周三 → 1月15日:
      • d=15-1=14
      • r=14 mod7=0
      • 星期不变 → 周三
    • 周二往后20天:
      • r=20 mod7=6
      • 推6天:周二 → 周一
  • Pitfalls:
    • 忘记取余会错;整7天不改变星期。
  • Output:
    • “d=__,r=__,从周__往后推__天 → 周__。”

CARD-070|持续N天(默认口径:开始当天算第1天)

  • Title: 持续N天:结束=开始+N-1
  • Alias: N天后是哪天 / 活动持续N天到几号结束 / 从某日开始N天结束日
  • Tags: 日期推算, 持续N天, 口径, +N-1
  • Trigger:
    • “从某天开始算N天到哪天?”
    • “活动持续N天到几号结束?”
    • “开始那天算不算第一天?”
  • Content:
    • 默认口径:开始当天算第1天
    • 结束日期 = 开始日期 + N − 1
    • 反推开始:开始日期 = 结束日期 − N + 1
  • Examples:
    • 3月2日开始15天(不跨月):
      • 结束=2+15-1=16 → 3月16日
  • Pitfalls:
    • 忘记“-1”会多算一天。
  • Output:
    • “按开始当天算第1天:结束=开始+N-1 → __月__日。”

CARD-071|跨月日期推算(模板:先扣本月剩余)

  • Title: 跨月推算:先扣本月剩余,再进下月
  • Alias: 跨月怎么算 / 30日开始N天 / 月底开始N天
  • Tags: 跨月, 日期推算, 本月剩余, 模板
  • Trigger:
    • “4月30日开始3天到哪天?”
    • “跨月怎么计算不出错?”
  • Steps:
    1. 查本月天数 T(30/31/28/29)
    2. 本月可用天数 S = T - 起始日 + 1(默认口径)
    3. 若 N ≤ S:结束在本月,结束日 = 起始日 + N - 1
    4. 若 N > S:
      • N = N - S
      • 月份 +1(跨年则年份+1,月份归1)
      • 进入下个月从1日继续,重复步骤1~4
  • Examples:
    • 4月30日开始持续3天(默认口径):
      • 本月可用 S = 30-30+1=1
      • N=3>1 → 剩余 N=2
      • 5月1日第2天,5月2日第3天 → 5月2日
  • Pitfalls:
    • 不先扣本月剩余,直接相加容易越界。
  • Output:
    • “本月先用__天,剩__天到下月,结果__月__日。”

CARD-072|跨年日期推算(分段:先到12月31日)

  • Title: 跨年推算:先到12月31日,再从次年1月1日继续
  • Alias: 跨年怎么算 / 12月开始N天 / 到明年几月几日
  • Tags: 跨年, 日期推算, 分段
  • Trigger:
    • “12月开始算N天会到明年吗?”
    • “跨年日期怎么推算?”
  • Content:
    • 跨年一律分两段:
      • 段1:从开始日期算到当年12月31日(用CARD-071跨月方法也可)
      • 段2:剩余天数从次年1月1日起继续推算
  • Examples:
    • 12月30日开始5天(默认口径):
      • 12月30日第1天,12月31日第2天
      • 剩余3天到次年:1月1日第3天,1月2日第4天,1月3日第5天
      • 结果:次年1月3日
  • Output:
    • “先到本年12月31日用掉__天,剩__天到次年 → __年__月__日。”

CARD-080|日序DOY(进阶工具)

  • Title: 日序DOY:某日期是一年中的第几天
  • Alias: 一年第几天 / 今年第几天 / DOY怎么算
  • Tags: 日序, DOY, 跨月, 跨年, 进阶
  • Trigger:
    • “3月1日是一年第几天?”
    • “闰年3月1日为什么不一样?”
    • “DOY是什么?”
  • Content:
    • 定义:1月1日为第1天
    • 计算:DOY =(1月到(M-1)月的总天数)+ D
    • 若 M>2 且该年为闰年:DOY 再 +1(因为2月多一天)
  • Examples:
    • 平年3月1日:31 + 1 = 32
    • 闰年3月1日:31 + 1 + 1 = 33
  • Output:
    • “__月__日是这一年的第__天(若闰年且过了2月,+1)。”

CARD-090|季度天数(完整:Q1受2月影响)

  • Title: 季度天数(Q1平年90/闰年91,其余固定)
  • Alias: 第一季度多少天 / 每个季度多少天 / Q1 Q2 Q3 Q4
  • Tags: 季度, 天数, 第一季度, 平年闰年
  • Trigger:
    • “平年第一季度多少天?”
    • “闰年第一季度多少天?”
    • “第二季度多少天?”
  • Content:
    • 一年4个季度(每季度3个月)
    • Q1(1-2-3月):
      • 平年:31+28+31=90
      • 闰年:31+29+31=91
    • Q2(4-5-6月):30+31+30=91(平/闰都一样)
    • Q3(7-8-9月):31+31+30=92(平/闰都一样)
    • Q4(10-11-12月):31+30+31=92(平/闰都一样)
  • Output:
    • “先判平/闰年,再给对应季度天数。”

CARD-100|连续两个大月只有:7月和8月

  • Title: 连续两个大月只有:7月和8月
  • Alias: 连续31天的两个月 / 连着两个大月 / 7月8月为什么都31天
  • Tags: 大月, 连续
  • Trigger:
    • “一年里连续的两个大月是哪两个月?”
  • Content:
    • 连续的两个大月只有一组:7月和8月
  • Output:
    • “7月和8月。”

CARD-110|题干口径词典(持续N天/保质期:包含当天 or 不含当天)

  • Title: 持续N天/保质期:包含当天 or 不含当天
  • Alias: 为什么差一天 / 算不算当天 / 从次日开始怎么理解
  • Tags: 口径, 持续天数, 保质期, 易错
  • Trigger:
    • “持续N天算不算当天?”
    • “从次日开始是什么意思?”
    • “为什么答案总差一天?”
  • Content:
    • 默认口径(题目未特别说明):
      • 开始当天算第1天
      • 结束=开始+N-1
    • 若题目出现:不含当天 / 从次日开始 / 第二天起
      • 开始当天不算第1天
      • 常等价:结束=开始+N(而不是+N-1)
    • 若题目出现:包含当天 / 算上当天
      • 按默认:结束=开始+N-1
  • Output:
    • 回答结尾必须加一句:按题意口径:包含/不含开始当天。

CARD-120|保质期/到期日题(统一模板)

  • Title: 保质期/到期日:先定口径,再按持续N天推
  • Alias: 生产日期+保质期 / 到期日怎么算 / 食品过期时间
  • Tags: 保质期, 到期日, 日期推算, 模板
  • Trigger:
    • “牛奶生产日期10月11日,保质期30天,到期日是哪天?”
    • “保质期30天包含生产当天吗?”
  • Steps:
    1. 先用 CARD-110 确认口径:是否含生产当天
    2. 用 CARD-070 求结束(若跨月用 CARD-071)
    3. 输出到期日,并在末尾写口径一句话
  • Output:
    • “口径:____(含/不含生产当天)”
    • “计算:结束=开始+N-1(或+N)…(必要时跨月扣减)”
    • “到期日:__月__日”

CARD-900|易错点总卡(一次收束)

  • Title: 年月日与推算常见易错点(含反例)
  • Alias: 易错点 / 注意事项 / 常见错误 / 纠错卡
  • Tags: 易错点, 纠错, 反例
  • Trigger:
    • “年月日有哪些容易错的?”
    • “闰年最常见错误是什么?”
    • “跨月跨年要注意什么?”
  • Content:
    • 闰年判断:整百年要看400(1900平年、2000闰年)
    • 2月:平年28天、闰年29天;2月不算大月/小月
    • 持续N天:默认要+N-1(否则差一天)
    • 星期:必须mod7,整7天星期不变
    • 跨月:先扣本月剩余再进下月,别直接加日期越界
  • Output:
    • 用条目列出;必要时给1900/2000反例或说明“差一天”的原因

(可选)建议内部检索标签(不必输出给用户)

大月 小月 特殊月 2月 平年 闰年 闰年判断 整百年 400 4

星期 推算 取余 mod7 间隔天数

持续N天 开始当天算第1天 不含当天 次日开始

跨月 跨年 日序 DOY 季度 第一季度

口径 差一天 保质期 到期日