2022蓝桥杯省赛A组Python第二题

我刚开始考虑的暴力,但发现在Python下可能要几年。

。。。。。。。

然后肯定是要优化的,

当x%a=aa,x%b=xx,x%c=cc(并且a,b,c互质时,有x=p+a*b*c*k,其中k是比例系数,p是可以枚举的第一个满足当前条件的数)

于是:(1e17 / 1.9e8大概是5.2e8 , 可以轻松枚举出来)

'''
for i in range(46,43*47*48*49*41):
    if(i%41==1 and i%43==11 and i%47==5 and i%48==41 and i%49==46):
        print(i)
        break
'''
'''
print(146157785%41,146157785%43,146157785%47,146157785%48,146157785%49)
#146157785
'''

for i in range(146157785,int (1e17),41*43*47*48*49):
    if(i%46==15 and i%45==29 and i%44==33 and i%42==11 and i%40==9 and i%39==23 and i%38==37 and i%37 ==22 and i%36==29 and i%35==4 and i%24==17 and i%33==11 and i%32==25 and i%31==27 and i%30==29):
        print(i)
        break

可以得到结果:

  • 13
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值