暴力解2018刑侦题python版

# 1-->a 2-->b 3-->c 4-->d a[1]-->question1 a=[None]*11 #11是为了下标方便些,要不逻辑描述的时候容易出错
sum=[None]*4 for i in range(4**10): #定义循环次数
for j in range(1,11): #定义每个问题的答案
a[j]=int(i%(4**j)/(4**(j-1)))+1
for k in range(4): #计算每个选项的个数
sum[k]=a.count(k+1)
#开始逻辑运算
if(
(a[2]==1 and a[5]==3 or
a[2]==2 and a[5]==4 or
a[2]==3 and a[5]==1 or
a[2]==4 and a[5]==2)
and (a[3]==1 and a[3]!=a[6] and a[3]!=a[2] and a[3]!=a[4] or
a[3]==2 and a[6]!=a[3] and a[6]!=a[2] and a[6]!=a[4] or
a[3]==3 and a[2]!=a[3] and a[2]!=a[6] and a[2]!=a[4] or
a[3]==4 and a[4]!=a[3] and a[4]!=a[6] and a[4]!=a[2])
and (a[4]==1 and a[1]==a[5] and a[2]!=a[7] and a[1]!=a[9] and a[6]!=a[10] or
a[4]==2 and a[2]==a[7] and a[1]!=a[5] and a[1]!=a[9] and a[6]!=a[10] or
a[4]==3 and a[1]==a[9] and a[1]!=a[5] and a[2]!=a[7] and a[6]!=a[10] or
a[4]==4 and a[6]==a[10] and a[1]!=a[5] and a[1]!=a[9] and a[2]!=a[7])
and (a[5]==1 and a[8]==1 or
a[5]==2 and a[4]==2 or
a[5]==3 and a[9]==3 or
a[5]==4 and a[7]==4)
and (a[6]==1 and a[8]==a[4] and a[8]==a[2] or
a[6]==2 and a[8]==a[1] and a[8]==a[6] or
a[6]==3 and a[8]==a[3] and a[8]==a[10] or
a[6]==4 and a[8]==a[5] and a[8]==a[9])
and (a[7]==1 and sum.index(min(sum))+1==3 or
a[7]==2 and sum.index(min(sum))+1==2 or
a[7]==3 and sum.index(min(sum))+1==1 or
a[7]==4 and sum.index(min(sum))+1==4)
and (a[8]==1 and abs(a[7]-a[1])!=1 or
a[8]==2 and abs(a[5]-a[1])!=1 or
a[8]==3 and abs(a[2]-a[1])!=1 or
a[8]==4 and abs(a[10]-a[1])!=1)
and (a[9]==1 and (a[1]==a[6])!=(a[6]==a[5]) or
a[9]==2 and (a[1]==a[6])!=(a[10]==a[5]) or
a[9]==3 and (a[1]==a[6])!=(a[2]==a[5]) or
a[9]==2 and (a[1]==a[6])!=(a[9]==a[5]))
and (a[10]==1 and max(sum)-min(sum)==3 or
a[10]==2 and max(sum)-min(sum)==2 or
a[10]==3 and max(sum)-min(sum)==4 or
a[10]==4 and max(sum)-min(sum)==1) ):
for i in a[1:]:
print(chr(ord('a')+i-1),end='')
print('\n')

暴力解2018刑侦题python版的更多相关文章
- 人脸验证算法Joint Bayesian详解及实现(Python版)
人脸验证算法Joint Bayesian详解及实现(Python版) Tags: JointBayesian DeepLearning Python 本博客仅为作者记录笔记之用,不免有很多细节不对之处 ...
- 剑指offer(第2版)刷题 Python版汇总
剑指offer面试题内容 第2章 面试需要的基础知识 面试题1:赋值运算符函数 面试题2:实现Singleton模式 解答 面试题3:数组中重复的数字 解答 面试题4:二维数组中的查找 解答 面试题 ...
- python的约束库constraint解决《2018刑侦科题目》
Github地址:https://github.com/ZJW9633/hello-word/blob/master/Xingzhenke 题目分析: 10道题互相关联,耦合性强,暴力求解需4^10种 ...
- 【python】对于程序员来说,2018刑侦科推理试卷是问题么?
最近网上很火的2018刑侦科推理试卷,题目确实很考验人逻辑思维能力. 可是对于程序员来说,这根本不是问题.写个程序用穷举法计算一遍即可,太简单. import itertools class Solu ...
- LAMP一键安装包(Python版)
去年有出一个python整的LAMP自动安装,不过比较傻,直接调用的yum 去安装了XXX...不过这次一样有用shell..我也想如何不调用shell 来弄一个LAMP自动安装部署啥啥的..不过尼玛 ...
- 学习笔记24—win10环境下python版libsvm的安装
1.前言 由于毕业设计需要用到libsvm,所以最近专心于配置libsvm,曾经尝试过在matlab中安装,但是没有成功.最终在Python环境中完成安装. 2.LIBSVM介绍 LIBSVM 是台湾 ...
- 字符串匹配算法之 kmp算法 (python版)
字符串匹配算法之 kmp算法 (python版) 1.什么是KMP算法 KMP是三位大牛:D.E.Knuth.J.H.MorriT和V.R.Pratt同时发现的.其中第一位就是<计算机程序设计艺 ...
- 稀疏矩阵相乘-Python版
稀疏矩阵相乘-Python版 Given two sparse matrices A and B, return the r ...
- *** Python版一键安装脚本
本脚本适用环境:系统支持:CentOS 6,7,Debian,Ubuntu内存要求:≥128M日期:2018 年 02 月 07 日 关于本脚本:一键安装 Python 版 *** 的最新版.友情提示 ...
随机推荐
- 【转载】阻塞队列之三:SynchronousQueue同步队列 阻塞算法的3种实现
一.SynchronousQueue简介 Java 6的并发编程包中的SynchronousQueue是一个没有数据缓冲的BlockingQueue,生产者线程对其的插入操作put必须等待消费者的移除 ...
- urllib库详解 --Python3
相关:urllib是python内置的http请求库,本文介绍urllib三个模块:请求模块urllib.request.异常处理模块urllib.error.url解析模块urllib.parse. ...
- 在Vue项目中使用Element UI:按需引入和完整引入
下面操作在main.js文件中进行 完整引入: import Element from 'element-ui'; //样式文件,需单独引入 import 'element-ui/lib/theme- ...
- Javabean介绍
1.javabean简介 JavaBean 是一种JAVA语言写成的可重用组件.为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器.JavaBean 通过提供符合一致性设计模式的公 ...
- Jan.09
[10个可爱又迷人的加分俚语]1. Be in the air 将要发生的事情2. Clear the air 消除误会3. Cost an arm and a leg 极其昂贵4. A bad eg ...
- 略解ByteBuf
说到ByteBuf,我们并不陌生,官网给的解释为,一个可以进行随机访问或者是顺序访问的字节集合,它是NIO buffers缓冲的底层抽象.既然是底层抽象,那么我们就可以基于其衍生出很多的具体实现出来, ...
- 略解TCP乱序和丢包
在使用基于TCP实现的各种组件的时候,我们经常会处理数据包.这数据包说来奇怪,从来不会丢失,也不会乱序,只会产生粘包.底层的机制是如何实现的呢?进来我们就来用简洁易懂的文字描述清楚. 在TCP数据包设 ...
- PPT母版制作
选择母版 首先,去iSlide官网下载iSlide,下载iSlide后,power point的菜单栏会自动出现iSilde图标(如下图). 打开iSlide这一栏,点击“图示库”,会弹出一个窗口,就 ...
- Class的 getSuperclass与getGenericSuperclass区别
一.getSuperclass 返回直接继承的父类(由于编译擦除,没有显示泛型参数) Class<? super T> getSuperclass() 返回表示此 ...
- 显式拥塞通告(ECN)及其在Linux上的实现
1 ECN简介 首先看看ECN握手报文的特点,根据RFC3168,ECN握手报文IP头部不能够设置ECT和CE位的 SYN报文TCP标志字段的CWR和ECE位被置1 SYN-ACK报文的CWR位被置0 ...