#3671. C++-GESP 2025-03认证二级-编程题02(时间跨越)(拓展02-k小时后1<=k<=100000)

C++-GESP 2025-03认证二级-编程题02(时间跨越)(拓展02-k小时后1<=k<=100000)

[GESP202503 二级] 时间跨越(拓展02-k小时后1<=k<=100000)

题目描述

假设现在是 yymmddhh 时而 kk 小时后是 yy'mm'dd'hh' 时,对于给定的 y,m,d,h,ky, m, d, h, k,小杨想请你帮他计算出对应的 y,m,d,hy', m', d', h' 是多少。

输入格式

输入包含五行,每行一个正整数,分别代表 y,m,d,h,ky, m, d, h, k

输出格式

输出四个正整数,代表 y,m,d,hy', m', d', h'

输入输出样例 #1

输入 #1

2008
2
28
23
1

输出 #1

2008 2 29 0

输入输出样例 #2

输入 #2

2008
1
1
0
100000

输出 #2

2019 5 29 16

说明/提示

对于全部数据,保证有 2000y30002000 \leq y \leq 30001m121 \leq m \leq 121d311 \leq d \leq 310h230 \leq h \leq 231k1000001 \leq k \leq 100000。数据保证为合法时间。

闰年判断规则

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

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