【教学类-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

相关推荐
内蒙深海大鲨鱼10 分钟前
数据操作+数据预处理
python
ai生成式引擎优化技术17 分钟前
从参数驱动到认知行为驱动:SAI范式的理论转向与WSaiOS认知内核架构
python·架构·django·virtualenv·pygame
想你依然心痛31 分钟前
AtomCode在Python数据科学项目中的使用体验:从数据分析到可视化
开发语言·python·数据分析
许彰午36 分钟前
75_Python自动化办公之Word与PDF
python·自动化·word
冰暮流星1 小时前
flask之app.py讲解
后端·python·flask
大气的小蜜蜂1 小时前
基于Python+PyQt5+SQLite的药房管理系统实现:事务一致性与界面解耦全流程解析
python·qt·sqlite
FriendshipT1 小时前
Ultralytics:解读C2模块
人工智能·pytorch·python·深度学习·目标检测
程序员杰哥1 小时前
接口自动化测试项目框架详解
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
love530love1 小时前
AI Agent + 本地 ComfyUI 无头模式实战:关闭 IDE 后 AI 独立重启并完成图文生成
ide·人工智能·windows·python·音视频·agent·devops
FriendshipT1 小时前
Ultralytics:解读Attention模块
人工智能·pytorch·python·深度学习·目标检测