【教学类-50-01】20240324 “逻辑思维-得到APP”题目《七位考生上场排序》

作品展示:

背景需求:

2024年3月22日得到发布一道测试题,作为报名入门题(营销题)

母亲是逻辑思维得到APP的用户,她让我动脑做一下

我觉得可以用python写个代码做一下

通过排除法,获得72种符合问题0答案

然后根据问题1,我提取第1个字母是V的排列组合

然后根据问题2,我提取第3个字母是U的排列组合

代码汇总

python 复制代码
'''
逻辑思维:七名考生逐一上台表演

t=['T','U','V','W','X','Y','Z']
X 不能最先或最后出厂
X表演之前W不能擅长(W 在X之后)
T和Y不能排在第7个(排在最后一位)
Y或Z必须在W后面一位
V在U之前或之后表演


'''


print('------问题0  72种可能性-----------')
import itertools

t = ['T', 'U', 'V', 'W', 'X', 'Y', 'Z']
permutations = list(itertools.permutations(t))

valid_permutations = []

for permu in permutations:
    if permu.index('X') != 0 and permu.index('X') != 6 and permu.index('W') > permu.index('X') and permu.index('T') != 6 and permu.index('Y') != 6 and (permu.index('Y') == permu.index('W') + 1 or permu.index('Z') == permu.index('W') + 1) and (permu.index('V') == permu.index('U') + 1 or permu.index('V') == permu.index('U') - 1):
        valid_permutations.append(permu)

l=[]
for valid_permu in valid_permutations:
    l.append(valid_permu)
l=list(set(l))
l.sort()
# print(l)
# print(len(l))
# 72种可能性

for ll in l:
    print(ll)
('T', 'U', 'V', 'X', 'W', 'Y', 'Z')
('T', 'U', 'V', 'X', 'Y', 'W', 'Z')
('T', 'U', 'V', 'Y', 'X', 'W', 'Z')
('T', 'V', 'U', 'X', 'W', 'Y', 'Z')
('T', 'V', 'U', 'X', 'Y', 'W', 'Z')
('T', 'V', 'U', 'Y', 'X', 'W', 'Z')
('T', 'X', 'U', 'V', 'W', 'Y', 'Z')
('T', 'X', 'U', 'V', 'Y', 'W', 'Z')
('T', 'X', 'V', 'U', 'W', 'Y', 'Z')
('T', 'X', 'V', 'U', 'Y', 'W', 'Z')
('T', 'X', 'W', 'Y', 'U', 'V', 'Z')
('T', 'X', 'W', 'Y', 'V', 'U', 'Z')
('T', 'X', 'W', 'Y', 'Z', 'U', 'V')
('T', 'X', 'W', 'Y', 'Z', 'V', 'U')
('T', 'X', 'W', 'Z', 'Y', 'U', 'V')
('T', 'X', 'W', 'Z', 'Y', 'V', 'U')
('T', 'X', 'Y', 'U', 'V', 'W', 'Z')
('T', 'X', 'Y', 'V', 'U', 'W', 'Z')
('T', 'X', 'Y', 'W', 'Z', 'U', 'V')
('T', 'X', 'Y', 'W', 'Z', 'V', 'U')
('T', 'X', 'Z', 'W', 'Y', 'U', 'V')
('T', 'X', 'Z', 'W', 'Y', 'V', 'U')
('T', 'Y', 'U', 'V', 'X', 'W', 'Z')
('T', 'Y', 'V', 'U', 'X', 'W', 'Z')
('T', 'Y', 'X', 'U', 'V', 'W', 'Z')
('T', 'Y', 'X', 'V', 'U', 'W', 'Z')
('T', 'Y', 'X', 'W', 'Z', 'U', 'V')
('T', 'Y', 'X', 'W', 'Z', 'V', 'U')
('T', 'Z', 'X', 'W', 'Y', 'U', 'V')
('T', 'Z', 'X', 'W', 'Y', 'V', 'U')
('U', 'V', 'T', 'X', 'W', 'Y', 'Z')
('U', 'V', 'T', 'X', 'Y', 'W', 'Z')
('U', 'V', 'T', 'Y', 'X', 'W', 'Z')
('U', 'V', 'X', 'T', 'W', 'Y', 'Z')
('U', 'V', 'X', 'T', 'Y', 'W', 'Z')
('U', 'V', 'X', 'W', 'Y', 'T', 'Z')
('U', 'V', 'X', 'Y', 'T', 'W', 'Z')
('U', 'V', 'Y', 'T', 'X', 'W', 'Z')
('U', 'V', 'Y', 'X', 'T', 'W', 'Z')
('V', 'U', 'T', 'X', 'W', 'Y', 'Z')
('V', 'U', 'T', 'X', 'Y', 'W', 'Z')
('V', 'U', 'T', 'Y', 'X', 'W', 'Z')
('V', 'U', 'X', 'T', 'W', 'Y', 'Z')
('V', 'U', 'X', 'T', 'Y', 'W', 'Z')
('V', 'U', 'X', 'W', 'Y', 'T', 'Z')
('V', 'U', 'X', 'Y', 'T', 'W', 'Z')
('V', 'U', 'Y', 'T', 'X', 'W', 'Z')
('V', 'U', 'Y', 'X', 'T', 'W', 'Z')
('Y', 'T', 'U', 'V', 'X', 'W', 'Z')
('Y', 'T', 'V', 'U', 'X', 'W', 'Z')
('Y', 'T', 'X', 'U', 'V', 'W', 'Z')
('Y', 'T', 'X', 'V', 'U', 'W', 'Z')
('Y', 'T', 'X', 'W', 'Z', 'U', 'V')
('Y', 'T', 'X', 'W', 'Z', 'V', 'U')
('Y', 'U', 'V', 'T', 'X', 'W', 'Z')
('Y', 'U', 'V', 'X', 'T', 'W', 'Z')
('Y', 'V', 'U', 'T', 'X', 'W', 'Z')
('Y', 'V', 'U', 'X', 'T', 'W', 'Z')
('Y', 'X', 'T', 'U', 'V', 'W', 'Z')
('Y', 'X', 'T', 'V', 'U', 'W', 'Z')
('Y', 'X', 'T', 'W', 'Z', 'U', 'V')
('Y', 'X', 'T', 'W', 'Z', 'V', 'U')
('Y', 'X', 'U', 'V', 'T', 'W', 'Z')
('Y', 'X', 'V', 'U', 'T', 'W', 'Z')
('Y', 'X', 'W', 'Z', 'T', 'U', 'V')
('Y', 'X', 'W', 'Z', 'T', 'V', 'U')
('Z', 'T', 'X', 'W', 'Y', 'U', 'V')
('Z', 'T', 'X', 'W', 'Y', 'V', 'U')
('Z', 'X', 'T', 'W', 'Y', 'U', 'V')
('Z', 'X', 'T', 'W', 'Y', 'V', 'U')
('Z', 'X', 'W', 'Y', 'T', 'U', 'V')
('Z', 'X', 'W', 'Y', 'T', 'V', 'U')

print('------问题1 9种可能-----------')
'''
问题1:如果V第一个上场,下列那些选项为真
a、T第6个出场
b、X第3个出场
c、Z第7个出场
d、T在Y后立刻出场(Y排在T之前)
e、W在X后立刻出场(X排在W之前)
'''
# 提取V排在第1个的所有的可能性
V=[]
for x in l:
    if x[0]=='V':
        V.append(x)
    else:
        pass
print(V)
print(len(V))

for v in V:
    print(v)

('V', 'U', 'T', 'X', 'W', 'Y', 'Z') # Z第7个出场 X排在W之前
('V', 'U', 'T', 'X', 'Y', 'W', 'Z') # Z第7个出场
('V', 'U', 'T', 'Y', 'X', 'W', 'Z') # Z第7个出场 X排在W之前
('V', 'U', 'X', 'T', 'W', 'Y', 'Z') # Z第7个出场 X第3个出场
('V', 'U', 'X', 'T', 'Y', 'W', 'Z') # Z第7个出场 X第3个出场
('V', 'U', 'X', 'W', 'Y', 'T', 'Z') # Z第7个出场 T第6个出场 X第3个出场  Y排在T之前 X排在W之前
('V', 'U', 'X', 'Y', 'T', 'W', 'Z') # Z第7个出场 X第3个出场 Y排在T之前
('V', 'U', 'Y', 'T', 'X', 'W', 'Z') # Z第7个出场 Y排在T之前 X排在W之前
('V', 'U', 'Y', 'X', 'T', 'W', 'Z') # Z第7个出场


print('------问题2 10种可能----------')
'''
问题2:如果U第3个上场,Y最晚上场的次序是
a、1
b、2
c、5
d、6
e、7
'''
# 第3个是U
U=[]
for x in l:
    if x[2]=='U':
        U.append(x)
    else:
        pass
print(U)
print(len(U))

for u in U:
    print(u)

('T', 'V', 'U', 'X', 'W', 'Y', 'Z')  # U 3  Y 6
('T', 'V', 'U', 'X', 'Y', 'W', 'Z')
('T', 'V', 'U', 'Y', 'X', 'W', 'Z')
('T', 'X', 'U', 'V', 'W', 'Y', 'Z')  # U 3  Y 6
('T', 'X', 'U', 'V', 'Y', 'W', 'Z')
('T', 'Y', 'U', 'V', 'X', 'W', 'Z')
('Y', 'T', 'U', 'V', 'X', 'W', 'Z')
('Y', 'V', 'U', 'T', 'X', 'W', 'Z')
('Y', 'V', 'U', 'X', 'T', 'W', 'Z')
('Y', 'X', 'U', 'V', 'T', 'W', 'Z')

# 选择d  ==6个

结论:

题目0:符合七名考生演出顺序的排列有72种

题目1:如果V第1个上场,下列的5个选项都是正确的(有1-5个选项符合)

这里面只有一个('V', 'U', 'X', 'W', 'Y', 'T', 'Z')符合所有的选项(a-e)

Z第7个出场 T第6个出场 X第3个出场 Y排在T之前 X排在W之前题目2:如果U第3个上场,Y最晚上场的次序是:

U排在第3个的可能排序有10个,其中5个Y在U前,5个Y在U后,最靠右侧的是以下2个:

('T', 'V', 'U', 'X', 'W', 'Y', 'Z') # U 3 Y 6

('T', 'X', 'U', 'V', 'W', 'Y', 'Z') # U 3 Y 6

相关推荐
装不满的克莱因瓶3 分钟前
【自动驾驶领域】学习 Cityscapes 数据集——城市街景语义理解的标准基准
人工智能·pytorch·python·深度学习·学习·机器学习·自动驾驶
吴卫斌16 分钟前
波动率控制仓位系列(一):满仓轮动的“过山车”困境
大数据·python·股票·量化交易
如此这般英俊20 分钟前
手搓Claude Code-第三章 permission
人工智能·python·语言模型
TE-茶叶蛋39 分钟前
TF-IDF 与 BM25 深度解析:从理论到项目实战
python·django·tf-idf
xcbrand43 分钟前
湖南VI设计公司排名
大数据·人工智能·python
lllsure1 小时前
【开源项目】Learn Claude Code
python·ai
青山如墨雨如画3 小时前
【北邮-无线通信中的人工智能】物理层技术中AI的应用实践:基于KNN的调制识别(1)理论基础
人工智能·python·机器学习·matlab·jupyter
MATLAB代码顾问3 小时前
Python Matplotlib数据可视化实战指南
python·信息可视化·matplotlib
AI 编程助手GPT3 小时前
用 Python 做一个世界杯赛前分析脚本:以巴西 vs 摩洛哥为例
开发语言·网络·人工智能·python·chatgpt
万事大吉CC3 小时前
Python 笔试输入模板总结
python·算法