问题描述
小F喜欢研究日历。
她发现自己电脑的日期都是2022-02-28这种格式的,假如月和日不足两位,电脑会在前面补0。
给定一个年份和月份,小F想知道在电脑表示的该月的所有日期中,某个数字出现了多少次。
输入格式
多组输入,每组输入3个数字y,m,k,分别表示年、月、想知道的数字。
1000<=y<=9999 1<=m<=12 0<=k<=9
输出格式
每组输出一行,表示该数字出现了几次。
输入样例
2017 4 4
2000 1 0
输出样例
33
136
【提示】
日中的4:2017-04-04,2017-04-14,2017-04-24
月中的4:一共有30天
代码
while True:
y,m,k=map(int,input().split())
x = 0
a = 0
b=0
c=0
if y//1000==k:
a+=1
if y%1000//100==k:
a+=1
if y%1000%100//10==k:
a+=1
if y%1000%100%10==k:
a+=1
if m//10==k:
a+=1
if m%10==k:
a+=1
if m==1 or m==3 or m==5 or m==7 or m==8 or m==10 or m==12:
b = 31
elif m==4 or m==6 or m==9 or m==11:
b = 30
elif m==2:
if y % 4 != 0 or y % 400 != 0 and y % 100 == 0:
b = 28
else:
b = 29
for k1 in range(1, b+1):
if k1//10==k :
c+= 1
if k1%10//1==k:
c+=1
x = a * b + c
print(x)