题解 | #Python#牛客2022跨年场-题号G-李哥跨年
李哥跨年
https://ac.nowcoder.com/acm/contest/49343/G
题目来源
题目描述
李哥想知道今年跨年能否吃到疯狂星期四,他通过他的滔天手段查到了 100 年前也就是 1922 年到 1923 年的跨年夜星期天,他想知道今年跨年夜星期几?
输入描述
无
输出描述
输出一个整数。
备注
星期一输出1。
星期二输出2。
星期三输出3。
星期四输出4。
星期五输出5。
星期六输出6。
星期天输出7。
题解
# 闰年数
run_num = 0
# 判断闰年函数
def isRun(year):
if(year % 4 == 0 and year % 100 != 0 or year % 400 == 0):
return True
else:
return False
# 闰年数计算
for year in range(1923,2023):
if(isRun(year)==True):
run_num += 1
# 经过天数
amount_days = (2022 - 1923 + 1) * 365 + run_num
# 求今年(2022)的跨年夜是星期几
print((6 + amount_days % 7 ) % 7 + 1)
'''
△已知 1922 年跨年夜是星期日,星期一到日可用[0,6]或[1,7]表示,
amount_days % 7 的结果范围为[0,6],因此先选用[0,6]的表示法,最后再
加1修正为题目输出需求的表示法。
'''