蓝桥杯 完全日期

题目https://www.lanqiao.cn/problems/1562/learning/?page=1&first_category_id=1&sort=students_count&name=%E5%AE%8C%E5%85%A8%E6%97%A5%E6%9C%9F

 

答案

import datetime

d = datetime.datetime(2001,1,1)
d2 = datetime.datetime(2021,12,31)
delta = datetime.timedelta(days = 1)
cnt = 0
while d <= d2:
    num4 = d.year%10
    num3 = d.year//10%10
    num2 = d.year//100%10
    num1 = d.year//1000
    num6 = d.month%10
    num5 = d.month//10
    num8 = d.day%10
    num7 = d.day//10
    total_num = num1 + num2 + num3 + num4 + num5 + num6 + num7 + num8
    for i in range(1,int(total_num)):
        if total_num == i*i:
            cnt += 1
            break
    d = d + delta
    
print(cnt)

977

感想

自己很容易忘记delta

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值