首页 > 编程语言 >【趣味学算法】04_与谁结婚(逻辑推断|条件组合)

【趣味学算法】04_与谁结婚(逻辑推断|条件组合)

时间:2024-03-14 12:32:18浏览次数:28  
标签:结婚 搞不清 04 boy 小由鱼 靓仔 算法 三位 趣味

注: 本系列仅为个人学习笔记,学习内容为《算法小讲堂》(视频传送门),通俗易懂适合编程入门小白,需要具备python语言基础,本人小白,如内容有误感谢您的批评指正

有三对情侣要结婚,假设三位靓仔分别为 A、B、C,三位小仙女为 X、Y、Z。他们三对情侣比较皮,准备让吃瓜路小由鱼来猜!
小由鱼搞不清谁和谁结婚,所以去询问了这六位新人中的三位,得到的回答为:
A 说他要和 X 结婚
X 说她的未婚夫是 C
C 说他要和 Z 结婚
听到这样的回答后,小由鱼知道他们都是在开玩笑,说的都是假话,但他仍搞不清谁和谁结婚。
现在请编程求出到底哪位谁要和谁结婚。

依旧采用穷举法来解决该问题

设三个变量 x、y 和 z 分别表示与 X,Y,Z 结婚的靓仔。
它们可能取值都是:A,B,C
根据问题分析中我们可以推导出如下结论:
x!=‘A’ —— A 的新娘不是 X
x!=‘C’ —— 与 X 结婚的不是 C
z!=‘C’ —— C 的新娘不是 Z
x!=y ——与 X 结婚的不会与 Y 结婚
x!=z ——与 X 结婚的不会与 Z 结婚
y!=z ——与 Y 结婚的不会与 Z 结婚

那么只需要使用循环找到同时满足以上所有条件的即为正确的输出

boy = ['A','B','C']
for x in boy:
    for y in boy:
        for z in boy:
            if x!='A'and x!='C'and z!='C'and x!=y and x!=z and y!=z:
                print('X-{} Y-{} Z-{}'.format(x,y,z))

输出结果

X-B Y-C Z-A

标签:结婚,搞不清,04,boy,小由鱼,靓仔,算法,三位,趣味
From: https://blog.csdn.net/qq_44894943/article/details/136683523

相关文章

  • 京东广告算法架构体系建设--高性能计算方案最佳实践
    1、前言推荐领域算法模型的在线推理是一个对高并发、高实时有较强要求的场景。算法最初是基于Wide&Deep相对简单的网络结构进行建模,容易满足高实时、高并发的推理性能要求。但随着广告模型效果优化进入深水区,基于Transformer用户行为序列和Attention的建模逐渐成为主流,这个阶段......
  • c语言 线性搜索算法
            线性搜索被定义为一种顺序搜索算法,从一端开始,遍历列表中的每个元素,直到找到所需的元素,否则搜索将继续,直到数据集的末尾。 线性搜索算法 线性搜索算法如何工作?在线性搜索算法中:        1、每个元素都被视为该键的潜在匹配项并进行相同检查。 ......
  • java 线性搜索算法
            线性搜索被定义为一种顺序搜索算法,从一端开始,遍历列表中的每个元素,直到找到所需的元素,否则搜索将继续,直到数据集的末尾。 线性搜索算法 线性搜索算法如何工作?在线性搜索算法中:        1、每个元素都被视为该键的潜在匹配项并进行相同检查。 ......
  • 反演问题求解:基于MATLAB的反演问题求解算法实现和应用,包括反演问题数值模拟、反演问题
    鱼弦:公众号【红尘灯塔】,CSDN内容合伙人、CSDN新星导师、全栈领域优质创作者 、51CTO(Top红人+专家博主) 、github开源爱好者(go-zero源码二次开发、游戏后端架构https://github.com/Peakchen)基于MATLAB的反演问题求解:原理、应用、实现与分析反演问题是指由间接观测数......
  • 【智能算法】蝠鲼觅食优化算法(MRFO)原理及实现
    目录1.背景2.算法原理2.1算法思想2.2算法过程3.代码实现4.参考文献1.背景2017年,Zhao等人受到蝠鲼自然捕食行为启发,提出了蝠鲼觅食优化算法(MantaRayForagingOptimization,MRFO)。2.算法原理2.1算法思想MRFO模拟了蝠鲼在海洋中的觅食过程,提出了三种捕食策略......
  • 论文查重算法
    论文查重算法这个作业属于哪个课程https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering2024这个作业要求在哪里https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering2024/homework/13136这个作业的目标开发个人项目github:https://github.com/hhuang......
  • 汉诺塔的图解递归算法
    原文链接:https://www.cnblogs.com/dmego/p/5965835.html如下图所示,从左到右有A、B、C三根柱子,其中A柱子上面有从小叠到大的n个圆盘,现要求将A柱子上的圆盘移到C柱子上去,期间只有一个原则:一次只能移到一个盘子且大盘子不能在小盘子上面,求移动的步骤和移动的次数 解:(1)n==1  ......
  • 基于SSM的协同过滤算法的电影推荐系统(有报告)。Javaee项目。ssm项目。
    演示视频:基于SSM的协同过滤算法的电影推荐系统(有报告)。Javaee项目。ssm项目。项目介绍:采用M(model)V(view)C(controller)三层体系结构,通过Spring+SpringMvc+Mybatis+Vue+Layui+Elementui+Maven来实现。MySQL数据库作为系统数据储存平台,实现了基于B/S结构的Web系统。报......
  • 一致性哈希算法及其在分布式系统中的应用
    摘要本文将会从实际应用场景出发,介绍一致性哈希算法(ConsistentHashing)及其在分布式系统中的应用。首先本文会描述一个在日常开发中经常会遇到的问题场景,借此介绍一致性哈希算法以及这个算法如何解决此问题;接下来会对这个算法进行相对详细的描述,并讨论一些如虚拟节点等与此算......
  • 利用规约算法实现求解数组元素最大值
    规约算法原理可参照上一篇关于规约算法求解数组和的博客,此处不再详细介绍,直接给出代码实现过程及注释。#include<stdio.h>#include<stdlib.h>#defineN1000//数组大小__global__voidfindMax(int*array,int*maxValue,int*maxIndex){__shared__ints_ma......