herofly


私信TA

用户名:pyhero

访问量:16618

签 名:

等  级
排  名 33
经  验 14299
参赛次数 17
文章发表 321
年  龄 0
在职情况 待业
学  校
专  业

  自我简介:

解题思路:

注意事项:

参考代码:

n,m=map(int,input().split())
def yunn(x):
    s =0
    for i in range(2007,x):
        if i%100!=0 and i%4==0:
            s += 1 
        if i%400==0:
            s += 1 
    return s 
def isyun(n):
    if n%100!=0:
        if n%4==0:
            return 1 
        else:
            return 0 
    else:
        if n%400 ==0:
            return 1 
        else:
            return 0 
def mnum(n,m):
    dy={1:31,2:29,3:31,4:30,5:31,6:30,7:31,8:31,9:30,10:31,11:30,12:31}
    dp={1:31,2:28,3:31,4:30,5:31,6:30,7:31,8:31,9:30,10:31,11:30,12:31}
    global numm
    if isyun(n)==0:
        days = dp[m]
        s=0 
        for i in range(1,m):
            s += dp[i]
        return [s,days] 
    else:
        days = dy[m]
        s=0 
        for i in range(1,m):
            s += dy[i]
        return [s,days] 
num=(n-2007)*365+yunn(n)+mnum(n,m)[0]
yu=num%7+1 
print('''---------------------
 Su Mo Tu We Th Fr Sa
---------------------''')
print(' '*(yu*3),end='')
g=7-yu+1
h=1
for i in range((mnum(n,m)[1]+yu)//7):
    for i in range(h,g):
        print('%3d'%i,end='')
    h =g
    g+=7 
    print()
if (yu+mnum(n,m)[1])%7!=0:
    for i in range(h,mnum(n,m)[1]+1):
        print('%3d'%i,end='')
    print()
    print('---------------------')
else:
    print('---------------------')


 

0.0分

0 人评分

  评论区

  • «
  • »