Python编程比赛--学校abcde五个地方参观,(1)如果去a必须去b,(2)de只能选一个(3)bc只能选一个(4)cd两地都去或都不去(5)如去e,ad也必须去。问,新生最多能去哪些地方参观?

Python编程比赛--学校abcde五个地方参观,(1)如果去a必须去b,(2)de只能选一个(3)bc只能选一个(4)cd两地都去或都不去(5)如去e,ad也必须去。问,新生最多能去哪些地方参观?,第1张

Python编程比赛--学校abcde五个地方参观,(1)如果去a必须去b,(2)de只能选一个(3)bc只能选一个(4)cd两地都去或都不去(5)如去e,ad也必须去。问,新生最多能去哪些地方参观? Python编程比赛–新生要按一下条件从学校abcde五个地方参观,(1)如果去a必须去b,(2)de只能选一个(3)bc只能选一个(4)cd两地都去或都不去(5)如去e,ad也必须去。问,新生最多能去哪些地方参观?

题目描述:

题目:新生要按一下条件从学校abcde五个地方参观,(1)如果去a必须去b,(2)de只能选一个(3)bc智能选一个(4)cd两地都去或都不去(5)如去e,ad也必须去。

问,新生最多能去哪些地方参观?

代码:

#1代表去,0代表不去
for a in range(2):
    for b in range(2):
        for c in range(2):
            for d in range(2):
                for e in range(2):
                    if(a and (not b)):
                      continue
                    if((d and e)):
                        continue
                    if ((b and c)):
                        continue
                    if ((c and (not d)) or (d and (not c))):
                        continue
                    if (e and ((not a) or (not d))):
                        continue
                    print(a,b,c,d,e)

运行结果:

从运行结果可以看出:最多可以参观两个地方c、d或者a、b

算法思想:五个地方都有可能去或者不去,那么可以使用循环把所有的结果循环表示出来,从代码上可以看出来,我这使用了五层循环。然后在这些全部结果中,筛选满足五个条件的方案即可。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4830398.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-10
下一篇 2022-11-10

发表评论

登录后才能评论

评论列表(0条)

保存