3.21总结

D - Shuffle'm Up

在扑克桌上,扑克玩家常常会玩一种叫做“洗筹码”的游戏。洗筹码是通过将两堆扑克筹码 S1 和 S2 进行交错堆叠来完成的,每堆筹码包含 C 个筹码。每堆筹码可能包含多种不同颜色的筹码。

实际的洗牌操作是通过将 S1 中的一枚筹码与 S2 中的一枚筹码交错堆叠来完成的,如下所示,当 C = 5 时:

得到的单一结果堆 S12 包含 2 * C 个筹码。 S12 的底部筹码是来自 S2 的底部筹码。在这枚筹码上面,是来自 S1 的底部筹码。交错堆叠过程继续,将来自 S2 底部第二枚筹码放在 S12 上,然后是来自 S1 底部第二枚筹码,以此类推,直到将来自 S1 的顶部筹码放在 S12 上。

洗牌操作后,S12 被分成两堆新的筹码,从 S12 底部取出 C 枚筹码形成新的 S1,从 S12 顶部取出 C 枚筹码形成新的 S2。然后可以重复洗牌操作形成新的 S12

对于这个问题,你需要编写一个程序来确定特定的结果堆 S12 是否可以通过多次洗牌操作形成。

输入

输入的第一行包含一个整数 N,(1 ≤ N ≤ 1000),表示接下来的数据集的数量。

每个数据集包括四行输入。数据集的第一行指定一个整数 C,(1 ≤ C ≤ 100),表示每堆初始筹码(S1 和 S2)中的筹码数量。每个数据集的第二行指定 S1 中每个 C 枚筹码的颜色,从底部筹码开始。每个数据集的第三行指定 S2 中每个 C 枚筹码的颜色,从底部筹码开始。颜色用单个大写字母表示(A 到 H)。筹码颜色之间没有空格或分隔符。每个数据集的第四行包含 2 * C 个大写字母(A 到 H),表示 S1 和 S2 洗牌零次或多次后所期望的结果颜色。底部筹码的颜色首先被指定。

输出

每个数据集的输出包括一行,显示数据集编号(从 1 到 N),一个空格,以及一个整数值,表示获得期望结果堆所需的最小洗牌次数。如果使用数据集中的输入无法获得期望结果,则显示值 -1 作为洗牌次数。

样例

InputcopyOutputcopy
2
4
AHAH
HAHA
HHAAAAHH
3
CDE
CDE
EEDDCC
1 2
2 -1


思路:利用一个map容器,根据题目意思讲s1,s2使用循环依次将筹码堆叠,每堆叠一次将次数+1,再对其将得到的字符串与题目需要的字符串进行对比,若相同即打印行数和次数然后跳出,若map容器中该字符串出现次数没有变化即打印”-1“后跳出,每次进行下一次循环前要将其分成s1和s2两部分.

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

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

相关文章

为什么高铁提前三分钟停止检票?

为什么高铁提前三分钟停止检票? 高铁,作为现代交通方式的代表,以其高速、便捷、舒适的特点受到了广大乘客的青睐。然而,在乘坐高铁的过程中,乘客们可能会遇到一个问题:为什么高铁会提前三分钟停止检票呢&a…

【LAMMPS学习】三、构建LAMMPS(6)在构建中包含软件包

3. 构建 LAMMPS 3.6.在构建中包含软件包 在 LAMMPS 中,包是一组启用一组特定功能的文件。例如,分子系统的力场或刚体约束都在封装中。在 src 目录中,每个包都是一个子目录,包名称为大写字母。 包文档页面上给出了包的概述。每…

jupyter notebook设置代码提示方法

在命令行运行以下代码: pip install jupyter_contrib_nbextensionsjupyter contrib nbextension install --userpip install jupyter_nbextensions_configuratorjupyter nbextensions_configurator enable --user (有时安装第一行后会自动执行第二行&a…

python -u含义

python -u,Python运行选项 文章目录 python -u,Python运行选项python -u其他选项 python -u 在Python中,-u选项用于在输出中禁用缓冲。缓冲是一种将输出暂时存储在内存中,然后批量写入到文件或屏幕的技术。当Python程序的输出被重…

2024.3.18 JAVA编程的三层架构模式理解

2024.3.18 JAVA编程的三层架构模式理解 三层架构 controller:控制层,接收前端发送的请求。对请求进行处理,并响应数据。 service:业务逻辑层,处理具体的业务逻辑数据。 dao:数据访问层(Data A…

【php基础】输出、变量、布尔类型、字符串

php基础补充 1. 输出2.和"的区别3.变量3.1变量的命名规则3.2 两个对象指向同一个值3.3 可变变量 4.变量的作用域5. 检测变量6. 布尔类型7.字符串定义与转义8.字符串常用函数9.常量 1. 输出 echo: 输出 print: 输出,输出成功返回1 print_r(): 输出数组 var_dum…

Vue 3中实现基于角色的权限认证实现思路

一、基于角色的权限认证主要步骤 在Vue 3中实现基于角色的权限认证通常涉及以下几个主要步骤: 定义角色和权限:首先需要在后端服务定义不同的角色和它们对应的权限。权限可以是对特定资源的访问权限,比如读取、写入、修改等。用户认证&#…

汽车价格的回归预测项目

注意:本文引用自专业人工智能社区Venus AI 更多AI知识请参考原站 ([www.aideeplearning.cn]) 问题描述 汽车价格预测是一个旨在预估二手车市场中汽车售价的问题。这个问题涉及到分析各种影响汽车价格的因素,如品牌、车龄、性能…

3.21Code

基于二叉链表的二叉树最大宽度的计算 #include<iostream>#define MAXSIZE 1000using namespace std;int k0; int m0; //记录层数 typedef struct BiNode{char data;struct BiNode *lchild;struct BiNode *rchild; }BiNode,*BiTree;void CreateBiTree(BiTree &T){cha…

为什么大家都在“挺”鸿蒙?

试想某一天&#xff0c;应用软件能够在手机、电视、手表甚至汽车等设备上&#xff0c;实现无缝流转、纵享丝滑。 这不仅是畅想&#xff0c;而是鸿蒙正在布局的“遥遥领先”。 随着HarmonyOS NEXT鸿蒙星河版面向开发者开放申请、鸿蒙原生应用版图的基本成型&#xff0c;这个国…

多聆听,少评判

当朋友来找你倾诉、吐槽、诉苦&#xff0c;或是表达情绪的时候&#xff0c;你是怎样回应的&#xff1f; 许多人总有这样的习惯&#xff1a;每当听到朋友的倾诉&#xff0c;或者在网上看到别人诉苦时&#xff0c;第一反应往往是提建议&#xff1a;为什么你不试试这样做呢&#x…

龙芯新世界系统(安同AOCS OS)桌面启动时baloo_file退出错误问题

这两天我在龙芯安同AOCS OS中安装了坚果云&#xff0c;坚果云已经可以正常开机启动并自动同步文件&#xff1b;但是出现了一个新的问题&#xff0c;在右下角的托盘位置每次启动都要出现一个错误信息图标&#xff0c;点击开看是一个关于baloo_file进程意外退出的错误信息&#x…

ISIS骨干网连续性简述

默认情况下&#xff0c; 一、L1路由器是ISIS 普通区域内部路由器&#xff0c;只能与L1和L1-2路由器建立邻接关系&#xff0c;不能与L2路由器建立邻接关系。 二、L2路由器是骨干区域的路由器&#xff0c;L2路由器只能与其他 L2路由器同处一个区域&#xff0c;可与本区域的L2路由…

java JVM内存区域和对象创建,内存布局,访问

Java 虚拟机自动内存管理&#xff0c;不需要像C/C为每一个 new 操作去写对应的 delete/free 操作&#xff0c;不容易出现内存泄漏和内存溢出。但把内存控制权交给 Java 虚拟机&#xff0c;一旦出现内存泄漏和溢出问题&#xff0c;如不了解虚拟机怎样使用内存&#xff0c;将很难…

读书笔记:《像火箭科学家一样思考》

要像火箭科学家那样思考&#xff0c;就得从不同的角度看待这个世界。要想象那些无法想象的事情&#xff0c;解决那些无法解决的问题。能在没有明确指导方针且时间紧迫的情况下&#xff0c;解决复杂和陌生的问题。 突破性思维完善创意&#xff0c;测试实验面对成功和失败 冲破…

软考89-上午题-【操作系统】-同步与互斥

一、进程间的通信 在多道程序环境的系统中存在多个可以并发执行的进程&#xff0c;故进程间必然存在资源共享&#xff08;互斥&#xff09;和相互合作&#xff08;同步&#xff09;的问题。进程通信是指各个进程交换信息的过程。 同步是合作进程间的直接制约问题&#xff0c;互…

LeetCode 21 / 100

目录 矩阵矩阵置零螺旋矩阵旋转图像搜索二维矩阵 II LeetCode 73. 矩阵置零 LeetCode 54. 螺旋矩阵 LeetCode 48. 旋转图像 LeetCode 240. 搜索二维矩阵 II 矩阵 矩阵置零 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为…

关于UDP协议

UDP协议是基于非连接的发送数据就是把数据包简单封装一下&#xff0c;然后从网卡发出去就可以&#xff0c;数据包之间没有状态上的联系&#xff0c;UDP处理方式简单&#xff0c;所以性能损耗非常少&#xff0c;对于CPU、内存资源的占用远小于TCP&#xff0c;但是对于网络传输过…

【OJ比赛日历】快周末了,不来一场比赛吗? #03.23-03.29 #16场

CompHub[1] 实时聚合多平台的数据类(Kaggle、天池…)和OJ类(Leetcode、牛客…&#xff09;比赛。本账号会推送最新的比赛消息&#xff0c;欢迎关注&#xff01; 以下信息仅供参考&#xff0c;以比赛官网为准 目录 2024-03-23&#xff08;周六&#xff09; #7场比赛2024-03-24…

74CMS人才系统 CVE-2024-2561 RCE复现

Fofa语法 app"骑士-74CMS" 复现步骤 前期准备 主页长这样 需要先会员注册&#xff0c;注册为招聘者 复现 将poc贴入修改登录的Cookie信息和Token 访问查看 微信公众号 扫一扫关注CatalyzeSec公众号 我们一起来从零开始学习网络安全 加入我们的星球&#xff0c;…