【寒假每日一题】DAY.9 猜名次

news2024/12/24 8:39:32

目录

 一、题目内容

二、思路

                思路1

                思路2

                思路3

三、代码实现


一、题目内容


5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果:

A选手说:B第二,我第三;

B选手说:我第二,E第四;

C选手说:我第一,D第二;

D选手说:C最后,我第三;

E选手说:我第四,A第一;

比赛结束后,每位选手都说对了一半,请编程确定比赛的名次。

思路:

第一步:首先对5名选手进行排序。

第二步:由于题目说每位选手都说对了一半,如何将这句话转化为编程语言?【突破口】

第三步:打印名次。

注:细节在下文中。

第一步:首先对5名选手进行排序

他们的排名都有可能是1、2、3、4名,可以使用for循环的嵌套来穷举所有的可能性。

#include <stdio.h>
int main()
{
	//a、b、c、d赋值成多少都无所谓
	int a = 1;
	int b = 2;
	int c = 3;
	int d = 4;
	int e = 5;
	//使用for循环的嵌套穷举
	for (int a = 1;a <= 5;a++)
	{
		for (int b = 1; b <= 5; b++)
		{
			for (int c = 1; c <= 5; c++)
			{
				for (int d = 1; d <= 5; d++)
				{
					for (int e = 1; e <= 5; e++)
					{

					}
				}
			}
		}
	}

	return 0;
}

第二步:【突破口】

每个人都都说对一半,那该怎么转化编程语言呢?

以A选手为例子:

A选手说:B第二,我第三

转化为编程语言:(b == 2)+(a == 3) == 1

解释:假设a说b第二为真(返回1),a第三为假(返回0),相加起来就是1,恰好和题中“每人都说对一半”相呼应。

#include <stdio.h>
int main()
{
	//a、b、c、d赋值成多少都无所谓
	int a = 1;
	int b = 2;
	int c = 3;
	int d = 4;
	int e = 5;
	//使用for循环的嵌套穷举
	for (int a = 1;a <= 5;a++)
	{
		for (int b = 1; b <= 5; b++)
		{
			for (int c = 1; c <= 5; c++)
			{
				for (int d = 1; d <= 5; d++)
				{
					for (int e = 1; e <= 5; e++)
					{
						if ((b == 2) + (a == 3) == 1    //a说
							&& (b == 2) + (e == 4) == 1 //b说
							&& (c == 1) + (d == 2) == 1 //c说
							&& (c == 5) + (d == 3) == 1 //d说
							&& (e == 4) + (a == 1) == 1) //e说
						{
							
						}
													
					}
				}
			}
		}
	}

	return 0;
}

第三步:打印名次

#include <stdio.h>
int main()
{
	//a、b、c、d赋值成多少都无所谓
	int a = 1;
	int b = 2;
	int c = 3;
	int d = 4;
	int e = 5;
	//使用for循环的嵌套穷举
	for (int a = 1;a <= 5;a++)
	{
		for (int b = 1; b <= 5; b++)
		{
			for (int c = 1; c <= 5; c++)
			{
				for (int d = 1; d <= 5; d++)
				{
					for (int e = 1; e <= 5; e++)
					{
						if ((b == 2) + (a == 3) == 1    //a说
							&& (b == 2) + (e == 4) == 1 //b说
							&& (c == 1) + (d == 2) == 1 //c说
							&& (c == 5) + (d == 3) == 1 //d说
							&& (e == 4) + (a == 1) == 1) //e说
						{
							printf("a:%d b:%d c:%d d:%d e:%d\n", a, b, c, d, e);
						}
													
					}
				}
			}
		}
	}

	return 0;
}

程序结果:

从程序结果中发现:有些选手的名次重复了,这时可以再加上a*b*c*d*e==120来避免重复

【代码实现】

#include <stdio.h>
int main()
{
	//a、b、c、d赋值成多少都无所谓
	int a = 1;
	int b = 2;
	int c = 3;
	int d = 4;
	int e = 5;
	//使用for循环的嵌套穷举
	for (int a = 1;a <= 5;a++)
	{
		for (int b = 1; b <= 5; b++)
		{
			for (int c = 1; c <= 5; c++)
			{
				for (int d = 1; d <= 5; d++)
				{
					for (int e = 1; e <= 5; e++)
					{
						if ((b == 2) + (a == 3) == 1    //a说
							&& (b == 2) + (e == 4) == 1 //b说
							&& (c == 1) + (d == 2) == 1 //c说
							&& (c == 5) + (d == 3) == 1 //d说
							&& (e == 4) + (a == 1) == 1) //e说
						{
							if (a * b * c * d * e == 120)//避免重复
							{
								printf("a的名次:%d\nb的名次:%d\nc的名次:%d\nd的名次:%d\ne的名次:%d\n", a, b, c, d, e);
							}
						}							
					}
				}
			}
		}
	}

	return 0;
}

程序运行结果:

总结:这题的关键在于如何将第二步转化为编程语言。

2023年1月17日

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/168669.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

COS插件入驻Discuz!x

Discuz!Discuz! 平台&#xff0c;由一群高擎互联网人在倾情支持&#xff0c; 他们来自于腾讯Discuz! 创业团队成员以及优秀的开发者。在中国互联网风云变迁中&#xff0c;Discuz! 20多年间为300万企业及站长赋能&#xff0c;秉承“开放、连接、共赢”的精神&#xff0c;倡导与生…

ZStack协议栈点对点通信

这里是zstack3.0安装包&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1-N8FFQ86zenF1iq-wgkmJQ?pwd2023 提取码&#xff1a;2023 新建自己的zstack工程这篇写得详细&#xff1a;新建 这个点对点通信主要是终端节点向协调器发送命令D1,协调器收到命令后判断数据是否为…

聚焦技术与体验极致提升,阿里云视频云连续5年领跑!

全球领先的IT市场研究和咨询公司IDC发布 《中国视频云市场跟踪&#xff08;2022上半年&#xff09;》 阿里云连续五年稳居 中国视频云整体市场份额第一 整体市场份额占比达25.4% 近日&#xff0c;全球领先的IT市场研究和咨询公司IDC发布的《中国视频云市场跟踪&#xff08;…

算法训练营 day21 二叉树 二叉搜索树的最小绝对差 二叉搜索树中的众数 二叉树的最近公共祖先

算法训练营 day21 二叉树 二叉搜索树的最小绝对差 二叉搜索树中的众数 二叉树的最近公共祖先 二叉搜索树的最小绝对差 530. 二叉搜索树的最小绝对差 - 力扣&#xff08;LeetCode&#xff09; 给你一个二叉搜索树的根节点 root &#xff0c;返回 树中任意两不同节点值之间的最…

《啊哈算法》第四章之深度优先搜索

✌好听的歌一起分享&#xff01; 稻香 (女声版) - 余不不 - 单曲 - 网易云音乐 目录 模板 例子 1&#xff0c;关于遍历 2&#xff0c;关于边界 正文 1&#xff0c;概念 2&#xff0c;解救小哈 例子源码和题目 1&#xff0c;小学奥数 2&#xff0c;全排列 3&#x…

【自学Docker 】Docker inspect命令

Docker inspect命令 大纲 docker inspect教程 使用 docker inspect 命令可以用来获取 Docker容器 或者 Docker镜像 的元数据。该命令后面的 CONTAINER 可以是容器Id&#xff0c;或者是容器名。 docker inspect语法 haicoder(www.haicoder.net)# docker inspect [OPTIONS] N…

python小知识

一、pip config list -v#pip在哪里寻找pip.conf文件 阿里云镜像&#xff1a; 二、安装anaconda(阿里云镜像库) 1、安装完成&#xff0c;命令行输入&#xff1a;conda config生成.condarc文件&#xff08;运行期配置文件&#xff09; 2、如果原本的源中的源地址是 https&…

webService速通教学(送源码)

什么是WebService webService是一种古老的互联网通讯方法。通过http通讯&#xff0c;将数据封装成XML的形式在网络中传输。习惯Java开发的伙伴肯定会对其嗤之以鼻&#xff0c;为什么不用Json传输&#xff0c;为什么不直接通过url拼参数&#xff1f;最大的两个因素是&#xff1…

Nginx基础03:配置文件nginx.conf(Part2)

上一篇文章概述与罗列了"全局配置块、events配置块、http全局块"的基本配置与属性&#xff0c;本篇文章将继续深入server块的配置项&#xff0c;以及相关应用。上篇文章地址&#xff1a;Nginx基础02&#xff1a;配置文件nginx.conf&#xff08;Part1&#xff09;如何…

从“工业报国为己任”到“科技创造优质生活”——华阳集团三十周年记

2022年10月28日&#xff0c;ADAYO华阳集团(002906.SZ)发布了一份“亮眼”的三季报。2022年1-9月公司实现营业收入40.08亿元&#xff0c;同比增长28.03%&#xff0c;实现归母净利润2.67亿元&#xff0c;同比增长28.28%。其中第三季度营业收入、净利润绝对值均为上市以来单季度最…

Android 深入系统完全讲解(23)

OpenGL 和 OpenGLES 简介 OpenGL(Open Graphics Library)意为开放图形库&#xff0c;是一个跨平台的图形 API&#xff0c;用于指定 3D 图 形处理硬件中的软硬件编程接口。OpenGL 一般用于图形工作站&#xff0c;PC 端使用。由于性能和可 移植性等各方面原因&#xff0c;在移动端…

分享72个PHP源码,总有一款适合您

PHP源码 分享72个PHP源码&#xff0c;总有一款适合您 下面是文件的名字&#xff0c;我放了一些图片&#xff0c;文章里不是所有的图主要是放不下...&#xff0c; 72个PHP源码下载链接&#xff1a;https://pan.baidu.com/s/11BEwLdHiZF0DqB3Bhb3FaQ?pwdjoxq 提取码&#xff…

使用docker搭建版本控制系统-SVN

作者简介&#xff1a;一名Linux运维工程师&#xff0c;主要分享自己遇到的学习过程与遇到的问题。 座右铭&#xff1a;选择时尽心&#xff0c;行动时尽力&#xff0c;坚持时无怨&#xff0c;结束时无悔。 个人公众号&#xff1a;早九晚十二&#xff0c;欢迎大家留言交流…

day41|● 343. 整数拆分 ● 96.不同的二叉搜索树

题目链接:343. 整数拆分 1.代码 暴力做法&#xff1a;n前进行组合搜索得出二维数组result存放结果&#xff0c;然后对里面的元素进行乘积&#xff0c;谁最大就是结果 2.递归做法 class Solution { public:int integerBreak(int n) {vector<int>f(n 5, 0);f[2] 1;for …

LinkedList链表知识点概括

作者&#xff1a;爱塔居的博客_CSDN博客-JavaSE,数据结构领域博主 专栏&#xff1a;数据结构 作者简介&#xff1a;大三学生&#xff0c;希望2023年迎来更优秀的自己&#xff01;希望跟大家一同进步~ 文章目录 前言 一、链表的基本概念 二、面试题实战 前言 顺序表/ArrayList:…

数据湖之Hudi基础:核心原理

继续Hudi核心概念 参考官网描述与尚硅谷hudi公开资料 文章目录基本概念时间轴TimeLine1.Instants action 在表上执行的操作类型2.Instant time3.State两个时间概念文件布局&#xff08;FileLayout&#xff09;索引 Index表类型&#xff08;Table Types&#xff09;Copy On Writ…

echarts:实现3D地图版块叠加动效散点效果

需求描述 如下图所示&#xff0c;展示3D效果的地图版块&#xff0c;并叠加显示动效散点&#xff1a; 实现思路 首先是3D地图版块效果的实现&#xff0c;可以参考广州3D地图&#xff1b;而动效散点的实现&#xff0c;可以参考地图发散分布。 这里再提一个经过尝试并不行的思…

【mmdeploy】mmseg转ONNX/TensorRT,附推理代码

目录 1.关于mmdeploy 2.环境安装 2.1预编译安装&#xff08;Linux-x86_64, CUDA 11.x, TensorRT 8.2.3.0&#xff09;&#xff1a; 2.2预编译安装&#xff08;Linux-x86_64, CUDA 11.x, ONNX&#xff09;&#xff1a; 3.mmseg工程torch转onnx 4.使用onnx模型文件进行推理…

Dubbo框架学习(第一章Dubbo简介)

由于在微服务领域有两大框架统治&#xff0c;一个是springCloud的全家桶&#xff0c;一个是Dubbo。我用Dubbo比较少&#xff0c;所以也是学习状态。Dubbo框架学习&#xff0c;资料来源于cn.dubbo.apache.org。第一章Dubbo简介Apache Dubbo 是一款 RPC 微服务框架&#xff0c;提…

字节跳动青训营--前端day2

文章目录前言一、css1. css的组成2. css三种使用方式3.css的工作方式二、 css选择器Selector1. 选择元素的方式2. 伪类&#xff08;pseudo-classes&#xff09;2.1 状态伪类2.1 结构伪类3.通过组合选择元素3.1 直接组合3.2 元素组合的拓展4. 选择器的特异度&#xff08;Specifi…