离散数学——派谁出国问题"/>
离散数学——派谁出国问题
某公司要从赵、钱、孙、李、周五名新毕业的大学生中选派一些人出国学习。选派必须满足以下条件:(1)若赵去,则钱也去(2)李、周两人中必有一人去(3)钱、孙两人中去且仅去一人(4)孙、李两人同去或同不去(5)若周去,则赵、钱也去用等值演算法分析该公司如何选派他们出国。
代码如下:
# w3-1-p45-30.
# 某公司要从赵、钱、孙、李、周五名新毕业的大学生中选派一些人出国学习。选派必须满足以下条件:
# (1)若赵去,则钱也去
# (2)李、周两人中必有一人去
# (3)钱、孙两人中去且仅去一人
# (4)孙、李两人同去或同不去
# (5)若周去,则赵、钱也去
# 用等值演算法分析该公司如何选派他们出国。# 设命题:
# a:派赵去
# b:派钱去
# c:派孙去
# d: 派李去
# e:派周去
# (1)若赵去,则钱也去 Q:(not a) or b
# (2)李、周两人中必有一人去 R:d or e
# (3)钱、孙两人中仅去一人 S:(b and (not c)) or ((not b) and c)
# (4)孙、李两人同去或同不去 M:(c and d) or ((not c) and (not d))
# (5)若周去,则赵、钱也去 N:(not e) or (a and b)
# list = ['不去','去']
result = {0:'不去',1:'去'}
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(b == 1 and c == 1): continueQ = (not a) or bR = d or eS = (b and (not c)) or ((not b) and c)M = (c and d) or ((not c) and (not d))N = (not e) or (a and b)A = Q and R and S and M and Nif A == 1:print('赵{},钱{},孙{},李{},周{}'.format(result[a],result[b],result[c],result[d],result[e]))
更多推荐
离散数学——派谁出国问题
发布评论