试试手气(Python)

题目描述

试试手气

在这里插入图片描述
我们知道一个骰子有 6 个面,分别刻了 1 到 6 个点。下面给你 6 个骰子的初始状态,即它们朝上一面的点数,让你一把抓起摇出另一套结果。假设你摇骰子的手段特别精妙,每次摇出的结果都满足以下两个条件:

  • 1、每个骰子摇出的点数都跟它之前任何一次出现的点数不同;
  • 2、在满足条件 1 的前提下,每次都能让每个骰子得到可能得到的最大点数。
    那么你应该可以预知自己第 n n n ( 1 ≤ n ≤ 5 ) (1≤n≤5) (1n5) 摇出的结果。
输入格式:

输入第一行给出 6 个骰子的初始点数,即 [ 1 , 6 ] [1,6] [1,6] 之间的整数,数字间以空格分隔;第二行给出摇的次数 n ( 1 ≤ n ≤ 5 ) n(1≤n≤5) n(1n5)

输出格式:

在一行中顺序列出第 n n n 次摇出的每个骰子的点数。数字间必须以 1 个空格分隔,行首位不得有多余空格。

输入样例:

3 6 5 4 1 4
3

输出样例:

4 3 3 3 4 3

样例解释:

这 3 次摇出的结果依次为:

6 5 6 6 6 6
5 4 4 5 5 5
4 3 3 3 4 3


解题思路

根据题目要求,每次摇骰子需要满足以下两个条件:

  1. 每个骰子摇出的点数都跟它之前任何一次出现的点数不同;
  2. 在满足条件 1 的前提下,每次都能让每个骰子得到可能得到的最大点数。

根据以上条件,我们可以得出以下结论:

  1. 每个骰子第一次摇出的结果是固定的,即初始状态;
  2. 对于每个骰子的第二次摇出结果,可以分两种情况讨论:
    • 如果初始状态下的点数加上 n 大于 6,则第二次摇出的结果是 6-n;
    • 如果初始状态下的点数加上 n 小于等于 6,则第二次摇出的结果是 7-n;
  3. 以此类推,对于第三次、第四次、第五次摇出的结果,可以按照相同的规则计算。

因此,我们可以使用一个循环遍历骰子的六个面,根据上述规则计算出每次摇出的结果,并将结果存储在一个列表中。

最后,将列表中的结果以空格分隔输出即可。

根据上述思路,我们可以编写代码实现这个过程。


Python代码实现

# 输入骰子的六个面的点数
dice = list(map(int, input().split()))

# 输入整数n
n = int(input())

# 初始化结果列表
result = []

# 遍历骰子的六个面
for i in range(6):
    # 判断骰子当前面的点数加上n是否大于6
    if dice[i] + n > 6:
        result.append(str(6 - n))
    else:
        result.append(str(7 - n))

# 输出结果以空格分隔
print(' '.join(result))

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

高速PCB设计中的射频分析与处理方法

射频(Radio Frequency,RF)电路在现代电子领域中扮演着至关重要的角色,涵盖了广泛的应用,从通信系统到雷达和射频识别(RFID)等。在高速PCB设计中,射频电路的分析和处理是一项具有挑战…

【正点原子STM32连载】 第六十一章 USB读卡器(Slave)实验摘自【正点原子】APM32F407最小系统板使用指南

1)实验平台:正点原子APM32F407最小系统板 2)平台购买地址:https://detail.tmall.com/item.htm?id609294757420 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html## 第六十…

UG\NX二次开发 创建对象属性UF_ATTR_set_user_attribute

文章作者:里海 来源网站:里海NX二次开发3000例专栏 简介 创建对象属性UF_ATTR_set_user_attribute,这是一个新函数用于替代UF_ATTR_assign,旧版本NX是用UF_ATTR_assign函数创建、更新属性值,请参照这篇文章《UG\NX二次开发 创建对象属性UF_ATTR_assign》 下面是这个新函数…

在Windows 10中,主要有两种方法进入UEFI固件设置,包括传统的方法

在计算机上,基本输入输出系统(BIOS)是一种重要的底层软件,位于主板的一个芯片上,它负责基本操作,如引导和配置硬件(鼠标、键盘、内存、处理器等)。统一可扩展固件接口(UE…

加速产品成长:待完成工作框架如何改变游戏规则

待完成的工作 (JTBD) 框架旨在认识到客户心中有特定的目标,我们将这些目标称为工作。然后,客户“租用”产品或服务来帮助他们实现特定目标。该产品成为客户试图完成的工作的解决方案。如果一种产品或服务有效地帮助客户实现目标,他们就更有可…

C++ :运算符重载

运算符重载&#xff1a; 运算符重载概念&#xff1a;对已有的运算符重新进行定义&#xff0c;赋予其另一种功能&#xff0c;以适应不同的数据类型 加号运算符重载&#xff1a; 作用&#xff1a;实现两个自定义数据类型相加的运算 1.成员函数实现 号运算符重载 #include <io…

恋上数据结构与算法之二叉堆

文章目录 需求分析Top K 问题堆堆的基本接口设计二叉堆(Binary Heap)最大堆添加思路交换位置的优化实现 删除思路流程图解实现 replace批量建堆自上而下的上滤自下而上的下滤效率对比复杂度计算实现 完整代码 最小堆比较器解析Top K 问题问题分析代码实现内部方法分析问题 2 堆…

智慧科研助力科研数据的分析处理

如今&#xff0c;科研领域的发展日新月异&#xff0c;数据量也越来越大。这时&#xff0c;智慧科研可视化技术不仅为科研人员提供了快速高效的数据分析手段&#xff0c;而且为科研工作的推进提供了新的思路和方法。通过可视化手段&#xff0c;我们可以将各种数据、信息、知识以…

可行性研究:2023年废旧金属回收行业前景及市场数据分析

废品收购是再生资源行业的重要业务之一。是指将各种废弃物品分类后按不同种类和性能卖给不同的生产厂商或直接出售给再制造厂家&#xff08;如重新使用报废汽车拆解的零件&#xff09;。废旧金属是指暂时失去使用价值的金属或合金制品&#xff0c;一般的废旧金属都含有有用的金…

unity学习笔记12

一、物理系统 如何让一个球体受到重力的影响&#xff1f; 只要给物体添加刚体组件&#xff08;Rigidbody&#xff09;&#xff0c;就可以使其受到重力影响 1.刚体&#xff08;Rigidbody&#xff09;&#xff1a; 刚体是一个组件&#xff0c;用于使游戏对象受到物理引擎的控制。…

Antd可编辑表格初始数据为空,单元格不能编辑的解决办法

黑科技超简单: 给table表格增加行className rowClassName{() > editable-row} 然后设置可编辑表格的行样式 .editable-row:hover .editable-cell-value-wrap {border: 1px solid #d9d9d9;border-radius: 4px;padding: 4px 11px;}.editable-cell-value-wrap {padding: 5px…

网站使用高防CDN进行防护有哪些优势

随着互联网的快速发展&#xff0c;个人网站、企业网站也越来越多&#xff0c;网站之间的竞争也越来越强。网站间越来越大的竞争压力&#xff0c;也时长会衍生一些不法行为&#xff0c;如以攻击为手段&#xff0c;使对方网站陷入瘫痪。针对网站的攻击&#xff0c;市场也是有推出…

【趣味篇】Scratch之管道马里奥

【作品展示】管道马里奥 操作&#xff1a;点击小绿旗进入游戏主页面&#xff0c;通过鼠标控制马里奥左右移动踩在管道上拿到更多金币。

开启虾皮购物新旅程,快速注册买家号

想要在shopee上畅享丰富的购物体验吗&#xff1f;那就让我们一起迈出第一步&#xff0c;注册一个属于你自己的虾皮买家号吧&#xff01; 1. 访问虾皮平台 首先&#xff0c;打开你的浏览器&#xff0c;输入虾皮平台网址&#xff0c;点击注册或登录按钮。这将引导你进入注册界面…

【虚拟机】Docker基础 【一】

1.1.部署MySQL 首先&#xff0c;我们利用Docker来安装一个MySQL软件&#xff0c;大家可以对比一下之前传统的安装方式&#xff0c;看看哪个效率更高一些。 如果是利用传统方式部署MySQL&#xff0c;大概的步骤有&#xff1a; 搜索并下载MySQL安装包上传至Linux环境编译和配置…

Retrobatch for mac图片批处理软件

Retrobatch是一款功能强大的图片批量操作软件&#xff0c;提供了批量加水印、裁剪、压缩等功能&#xff0c;而且处理速度非常快。 在Retrobatch中&#xff0c;用户可以通过拖动相应动作到工作区形成节点(Nodes)&#xff0c;并将节点连接起来形成一个Workflow&#xff0c;最后运…

chrome vue devTools安装

安装好后如下图所示&#xff1a; 一&#xff1a;下载vue devTools 下载链接https://download.csdn.net/download/weixin_44659458/13192207?spm1001.2101.3001.6661.1&utm_mediumdistribute.pc_relevant_t0.none-task-download-2%7Edefault%7ECTRLIST%7EPaid-1-13192207…

Lesson 08 string类 (中)

C&#xff1a;渴望力量吗&#xff0c;少年&#xff1f; 文章目录 二、string类的介绍与使用2. 使用&#xff08;5&#xff09;string类对象的修改操作 三、拷贝1. 引入2. 浅拷贝3. 深拷贝 总结 二、string类的介绍与使用 2. 使用 &#xff08;5&#xff09;string类对象的修改…

网络通信概述

文章目录 IP地址端口号协议三要素作用 五元组协议分层OSI七层模型TCP/IP 五层模型应用层传输层网络层数据链路层物理层 封装和分用发送方 - 封装中间转发接收方 - 分用 一般认为计算机网络就是利用通信线路和通信设备将地理上分散的、具有独立功能的多个计算机系统按不同的形式…

QT学习_16_制作软件安装包

1、准备软件exe及其运行环境 参考&#xff1a;Qt学习_12_一键生成安装包_江湖上都叫我秋博的博客-CSDN博客 这篇博客记录了&#xff0c;如何用window的脚本&#xff0c;一键生成一个可以免安装的软件压缩包&#xff0c;解压缩后&#xff0c;点击exe文件就可以直接运行。 这一…