其他分享
首页 > 其他分享> > 微生物繁殖,古堡算式

微生物繁殖,古堡算式

作者:互联网

文章目录

微生物增殖

题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

假设有两种微生物 X 和 Y。

X 出生后每隔 3 分钟分裂一次(数目加倍),Y 出生后每隔 2 分钟分裂一次(数目加倍)。

一个新出生的 X,半分钟之后吃掉 1 个 Y,并且,从此开始,每隔 1 分钟吃 1 个 Y。

现在已知有新出生的 X=10, Y=90,求 60 分钟后Y的数目。

运行限制
最大运行时间:1s
最大运行内存: 128M

分析

在这里插入图片描述

运行代码

X = 10
Y = 90
for i in range(1,121):
    if i % 2 == 1:
        Y -= X
    if i % 6 == 0:
        X *= 2
    if i % 4 == 0:
        Y *= 2
print(Y)

通过截图

答案为94371840
在这里插入图片描述

保护环境

在这里插入图片描述

Y仅仅只差了1,就导致一个物种是否可以继续存活,说不定,有时我们破坏的就是使一个物种灭绝的最后一根稻草

古堡算式

题目描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

福尔摩斯到某古堡探险,看到门上写着一个奇怪的算式:

ABCDE * ? = EDCBA
他对华生说:“ABCDE 应该代表不同的数字,问号也代表某个数字!”

华生:“我猜也是!”

于是,两人沉默了好久,还是没有算出合适的结果来。

请你利用计算机的优势,找到破解的答案。

把 ABCDE 所代表的数字写出来。

运行限制
最大运行时间:1s
最大运行内存: 128M

分析

运行代码

from itertools import permutations

nums = [i for i in range(10)] # 0-9

for i in permutations(nums,5): # i是一个元组
    ABCDE = "".join(str(j) for j in i)
    EDCBA = ""
    for j in range(4,-1,-1): # 反向遍历ABCDE
        EDCBA+=ABCDE[j]

    for z in range(1,10): # ?的遍历
        if int(ABCDE) * z == int(EDCBA):
            print(int(ABCDE))

通过截图

答案为21978
在这里插入图片描述

如有错误,敬请指正,欢迎交流,谢谢♪(・ω・)ノ

标签:10,算式,ABCDE,古堡,range,微生物,整除,运行
来源: https://blog.csdn.net/m0_51302822/article/details/123194592