PTA判断顺子

PTA 202X编程训练--字符串(67道题) 本题目要求编写程序统计一行字符中单词的个数。所谓“单词”是指连续不含空格的字符串,各单词之间用空格分隔,空格数可以是多个。输入给出一行字符。在一行中输出单词个数。 输出样例: 代码内容 7-2 IP地址转换 题目描述 一个IP地址是用四个字节(每个字节8个位)的二进制码组成。请将32位二进制码表示的IP地址转换为十进制格式表示的IP地址输出。输入在一行中给出32位二进制字符串。在一行中输出十进制格式的IP地址,其由4个十进制数组成(分别对应4个8位的二进制数),中间用“.”分隔开。 输出样例: 代 阅读详情

有五张Poker牌,需要进行判断:它是否是一个正常的顺子。 说明:34567890JQKA2wW相信大家知道,为简化操作,0代表10,w和W代表小王和大王。大、小王可代替任意的牌哟。编程判断输入的五张牌是否会构成一个顺子(方案多个时,输出较大的,34567和0JQKA分别是最小和最大的顺子)

输入格式:

输入用五个字符代表的五张牌,系统确保输入的数据无误,但并不一定是有序排列。

输出格式:

输出这五张牌组成的顺子或输出−1表示不是顺子,注意大小王可当任意的牌使用,输出的顺子要求是最大的一个,且升序排列(如果有的话)。输出格式中开始和结尾是一对方括号,具体格式见样例。

输入样例1:

A0KJw

输出样例1:

[0JQKA]

输入样例2

A3452

输出样例2:

[-1]

思路:

既然要组顺子,那我们反向思考一下在什么情况下不能组成顺子?

1、除大小王之外的排重复出现。

2、顺子最大的牌和最小的牌差值大于4。

3、出现2。(因为最大只到A)

剩下的就都是顺子!

AC代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define endl "\n"

string s,sz="34567890JQKA";
bool vis[17];
map<char,ll>mp;

void solve(){
	cin >> s;
	bool f=0;
	ll mx=0,mn=20;
	for(ll i = 0 ; i < s.size() ; i ++){
		if(s[i] == 'W' || s[i] == 'w')continue;
		mp[s[i]]++;
		if(mp[s[i]] > 1 || s[i] == '2')f=1;
		ll x=sz.find(s[i]);
		if(x >= 0){
			vis[x]=1;
			mx=max(mx,x);
			mn=min(mn,x);
		}
	}
	if(f || mx-mn > 4){
		cout << "[-1]" << endl;
		return;
	}
	mn=min(mn,7ll);
	cout << "[" << sz.substr(mn,5) << "]" << endl;
	return;
}

int main(){
	ll t=1;//cin >> t;
	while(t --)solve();
	return 0;
}
[原创]Keil工程STM32F103C8T6无缝转换到STM32F103RCT6 有个项目,老版本是STM32F103C8T6,硬件资源不够了,新版本采用STM32F103RCT6。 无缝过渡,如下: 选定芯片 宏定义改为STM32F10X_HD,USE_STDPERIPH_DRIVER 删除原有的启动汇编文件,更换为高密度器件汇编文件 时钟系统紊乱? 那得看你程序怎么写: 先看F103时钟树 int main(void) { unsigned char stat... 阅读详情

相关推荐

Windows10 Qt下用MINGW 编译VTK-8.1.0

1. 材料准备(1) 下载VTK-8.1.0: https://www.vtk.org/download/(2) 下载TIFF库: http://gnuwin32.sourceforge.net/packages/tiff.htm(直接安装即可,注意选择路径不包含中文字符)2. 安装: (1) cmake配置: a. Module下配置:勾选下图所示的六项 b. Build 配置:勾选这里能够在b...

hit1524468的专栏 3892

判断扑克牌能否组成顺子

从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。 组成顺子有一些条件是必须要满足的, 1.除了大小王之外, 其他牌不能重复 2.除了大小王之外, 最大值-最小值==4(没有零), 最大值-最小值==3或4(有1个零), 最大值-最小值==2或3或4(有2个零) , 但是看到了别人的优化版, 这几种情况可以统一为最大值-最小值<5即可, 不需要看0个数量 tip : 使用se...

gcs的博客 2529

【AWS】创建aws云服务器EC2实例

本文介绍了如何创建aws的EC2云服务器,并介绍了如何使用Xshell远程连接上云服务器

Marcos921的博客 2501

PTA 纸牌游戏

• 请您模拟纸牌游戏,规则如下:• 玩家将一副扑克牌一张一张地发牌,从左到右排成一排,不能重叠。只要一张扑克牌和左边的第一张牌或左边的第三张牌相匹配,就将这张扑克牌移被匹配的牌的上面。所谓两张牌匹配是这两张牌的数值(数字或字母)相同或花色相同。每当移了一张牌之后,就再检查看这张牌能否继续往左移,每次只能移在牌堆顶部的牌。本游戏可以将两个牌堆变成一个牌堆,如果根据规则,可以将右侧牌堆的牌一张一张地移到左侧牌堆,就可以变成一个牌堆。本游戏尽可能地把牌往左边移动。如果最后只有一个牌堆,玩家就赢了。

AcleverPig的博客 674

VMD分子可视化实战:5个隐藏技巧让你的科研图像秒变顶刊级别

本文深入探讨了VMD分子可视化软件在科研图像美化中的5个高阶技巧,旨在帮助研究者将分子结构图提升至顶刊级别。内容涵盖原子色彩与材质的艺术化定制、沉浸式分子环境构建、专业构图与视角控制、数据驱动的动态可视化以及自动化工作流建立,通过精细的色彩映射、光照调整、周期性边界展示和脚本自动化,显著增强图像的科学叙事性与视觉冲击力。

weixin_29240343的博客 421

LD分析实战:基于Plink和R的连锁不平衡计算与可视化全流程

本文详细介绍了基于Plink和R的连锁不平衡(LD)分析全流程,包括基因型数据预处理、LD计算参数设置及结果可视化技巧。通过实战案例解析PLINK文件格式转换、r²值计算关键参数,并展示如何使用ggplot2绘制高质量LD热图,帮助研究人员高效完成基因组关联分析。

weixin_29074295的博客 320

PTA - 扑克游戏

做PTA时发现题库存在这样一道题,虽然不难,但是我写出来感觉很冗沉,希望有大佬可以帮忙批评改正! 任务描述 老师给X同学留了一个任务:扑克游戏中的牌型判断。 输入格式: 输入的第一行,是一个整数N,表示有N组数据。 接下来的N行是N组数据,每一行数据有3张扑克牌, 例如:5S 6H 12C,其中数字表示点数(2-10分别代表2点到10点的牌,14代表A,11、12、13代表J、Q、K), 字母表示花色的第一个字符,黑桃(Spade)、红桃(Heart)、梅花(Club)、方块(Diamond)。 以上

Alan_Sheng的博客 1598

豆包大模型API调用两种方法

ps: 因为是自用,所以这里图方便采用硬编码密钥的形式;如果有需求/安全风险,建议参考官方教程设置ARK_API_KEY环境变量的方式。坏处是:看别人的教程走了一大圈弯路hh;基础调用的话方法一就可以满足了,也比较方便快捷,容易上手。将 <Model> 替换为 Endpoint ID即可。创建就按照提示填写信息就行,需要实名认证,有免费额度。绿框框里就是Endpoint ID。

kkkkkkkkkasey的博客 1万+

PTA 判断顺子

有五张Poker牌,需要进行判断:它是否是一个正常的顺子。说明:34567890JQKA2wW相信大家知道,为简化操作,0代表10,w和W代表小王和大王。大、小王可代替任意的牌哟。编程判断输入的五张牌是否会构成一个顺子(方案多个时,输出较大的,34567和0JQKA分别是最小和最大的顺子)

AcleverPig的博客 243

XCP实战系列介绍07-使用ASAP2 Editor生成A2l文件详解

介绍通过ASAP2 Editor工具生成A2l文件步骤详解

initiallizer的博客 7298

21、深入了解SELinux安全系统与/proc文件系统

本文深入探讨了SELinux安全系统与/proc文件系统的原理及实际应用。详细介绍了SELinux的安全上下文、域转换、运行模式、角色管理以及策略查看工具seinfo的使用;同时解析了/proc文件系统的结构与功能,涵盖进程信息查看、系统资源监控及性能优化方法。结合SELinux与/proc的协同应用,提供了系统问题排查流程与安全管理最佳实践,帮助用户提升Linux系统的安全性与稳定性。

ik678901234的博客 62

判断顺子的方法

/// <summary> /// 检查顺子 /// </summary> /// <param name="cards">排序后的原始牌</param> /// <param name="kingCount">癞子数量</param>...

weixin_30609331的博客 463

使用 Simulink 搭建一个地震信号反射系数反演与滤波联合仿真的系统模型

《Simulink地震信号处理仿真指南》摘要:本文详细介绍了使用Simulink进行地震信号反射系数反演与滤波联合仿真的完整流程。从创建模型、生成含噪合成地震记录(包含子波卷积与随机反射系数),到设计滤波模块(带通/小波/自适应滤波)和实现反演算法(Wiener-Hopf方程/RLS方法),最后通过可视化模块分析结果。教程涵盖理论准备、7个实施步骤、优化建议及实际应用场景,为地震勘探、地质调查等领域提供标准化的信号处理仿真方案,特别适合需要掌握地震信号反演与实时滤波技术的工程人员学习。

amy_mhd的博客 114

扑克游戏(PTA)—牌型判断

循环-扑克游戏(创新题):扑克游戏中的牌型判断

m0_64782700的博客 1953

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

python均分纸牌_Python实现比较扑克牌大小程序代码示例

是Udacity课程的第一个项目。先从宏观把握一下思路,目的是做一个比较德州扑克大小的问题首先,先抽象出一个处理的函数,它根据返回值的大小给出结果。之后我们在定义如何比较两个或者多个手牌的大小,为方便比较大小,我们先对5张牌进行预处理,将其按照降序排序,如下:def card_ranks(hand):ranks = ['--23456789TJQKA'.INDEX(r) for r, s in h...

weixin_31221157的博客 696

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

第二次作业

目前我在学习中存在的薄弱的知识点是结构体、数组和指针,其中数组中的二维数组和字符串是最为薄弱的。 获知自己结构体的知识薄弱是因为在PTA-练习八的编程题,做通讯录的录入与显示和查找单价最高的书这两道题的时候,花费时间多,且不太懂得要如何去调用里面的成员。后来还有结构体里的数组。想要一步一步给调用出来做比较,着实需要很严谨的思路。 数组方面的知识,主要在...

weixin_30498807的博客 97

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

模拟卷Leetcode 题解汇总

[PAT乙级-【题目+解答】汇总](https://blog.youkuaiyun.com/qq_34451909/article/details/104811369) [PAT甲级-【题目+解答】汇总](https://blog.youkuaiyun.com/qq_34451909/article/details/105119913) [PTA-浙大版《Python 程序设计》AC解答汇总](https://blog.youkuaiyun.com/qq_34451909/article/details/107907668)......

卷子的博客 1665

排序算法之【希尔排序】

希尔排序,作为一种高效的排序算法,更是在排序算法这个舞台上展现出了自己独特的魅力,听这个名字就感觉这个排序不简单,本篇文章我将带领大家深入了解希尔排序。本篇文章主要介绍了希尔排序,希尔排序的时间复杂度与增量序列的选择有关,它是一种不稳定的排序算法,适用于中等规模的数据排序。

2202_75605090的博客 1740

深挖C++:类和对象(中)

(先进后出)

xys_678的博客 249

ThunderKittens 深度解析:一个不基于 MLIR 的 C++ 模板 GPU DSL

Triton 是"让更多人能写 GPU kernel",ThunderKittens 是"让会写的人写得更爽"。前者用 MLIR 换易用性,后者用 C++ 模板换可控性。它们不是替代关系,而是覆盖了 GPU 编程光谱的两端。ThunderKittens 的出现,本质上是对"GPU DSL 必须基于 MLIR"这一默认假设的挑战。编译期类型系统本身就可以是一个强大的 DSL 基础设施,不需要中间 IR,不需要黑盒 pass,也能实现 tile 级抽象和零运行时开销。

Maxwell_Newton的博客 345

C++移动构造函数详解

移动构造函数是C++11引入的一种特殊构造函数,用于从临时对象(右值)"窃取"资源来初始化新对象,而不是进行昂贵的深拷贝。char* data;public:// 移动构造函数:参数是右值引用 &&// 关键:把源对象的资源置空。

拒绝AI文,努力在AI时代写出感动人心的好文章 393

跟我学c++中级篇—类型定义的方式

本文系统阐述了编程中类型定义的重要性及c++中的实现方式。重点对比了宏定义、typedef与modern using三种机制,指出using在可读性、灵活性和模板支持上的优势,推荐优先使用。同时提醒开发者注意别名滥用、类型歧义、错误信息冗长等问题,强调统一规范与合理设计。最终结论:在现代c++开发中,应以using为主,兼顾简洁性与可维护性,避免陷入命名混乱与编译困境。

fpcc的专栏 86

【C语言】字符与字符串函数

C语言中字符串为以\0结尾的字符数组,标准库函数基于此约定。本文解析字符串内存布局,详解ctype.h与string.h中字符分类、长度计算、拷贝、比较等函数的使用要点,强调长度判断与越界风险,最后通过命令行待办事项示例整合fgets、sscanf、strncpy、strcmp,展示实际应用中的关键细节。

记录在学习过程中学到的知识 355

C++ 函数模版

模板参数:● template ,T 就是类型占位符,名字可以自定义,习惯用T● 占位符可以在函数返回值、形参、函数内部当作类型使用使用要点模板代码一般写在头文件:编译器需要看到完整模板源码,才能在每个编译单元完成实例化全局函数、类内成员函数都可以写成模板实例化发生在编译阶段,不是运行时隐式实例化:调用时编译器自动推导实参类型,生成对应版本函数。

2501_94041724的博客 306

C++ 运行时多态与虚函数机制全面剖析【面试重点】

构成C++ 运行时多态必须是基类的指针或者引用调用虚函数。被调用的函数必须是虚函数,并且派生类必须对该虚函数完成重写/覆盖(Override)。只有基类的指针或引用才能既指向基类对象,又指向派生类对象(切片机制);而只有完成了虚函数重写,派生类与基类才具备不同的函数行为,达到“指向谁就调用谁”的效果。在类成员函数的前面加上virtual关键字修饰,该成员函数就成为了虚函数。public:// 成员函数前加 virtual 修饰,声明为虚函数。

Fuyo_0209的博客 446

#SQLite 数据库笔记一:(概念 / 终端指令 / SQL 语句 / C 编程 / 回调函数)

数据库 = 数据的仓库,假设数据是海量。能力说明存储数据持久化保存,程序退出数据还在统计数据、分组、排序数据管理增、删、改、查(CRUD)嵌入式设备上也会用数据库(单片机网关、路由器、工业 HMI 都常见),因为 sqlite 体积小、无需服务进程、单文件即可。数据库 = 库 > 表 > 记录(行) > 字段(列)sqlite3 = 开源、C 写的、单文件、免安装、最多 2T 的嵌入式关系型数据库。

lwq20051110的博客 220
上一篇: PTA 2813:画家问题(熄灯问题)
下一篇: PTA qls学画图
翰墨织梦
博客等级 码龄4年 384粉丝 84原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值