61-扑克牌中的顺子

2024-02-19 06:18
文章标签 扑克牌 61 顺子

本文主要是介绍61-扑克牌中的顺子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        从若干副扑克牌中随机抽 5 张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。如输入: [1,2,3,4,5] 输出: True;输入: [0,0,1,2,5] 输出: True。

        根据题意其实就是给一个含有五个元素的数组,数组的元素是从0到13之间。判断数据元素是不是连续即可,但这里有一个特征只要最大值减去最小值小于5且不出现重复即可满足,因为0是可以代替所有的数的。

package leecodeOff;import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Set;/** 61.扑克牌中的顺子*/
public class Demo61 {public boolean isStraight(int[] nums) {Set<Integer> set = new HashSet<Integer>();int max = 0;int min = 14;for(int i=0;i<nums.length;i++) {int temp = nums[i];if(temp == 0) {continue;}else {if(!set.add(temp)) {return false;}else {max = Math.max(max, temp);min = Math.min(min, temp);}}}if(max - min<5) {return true;}else {return false;}}public static void main(String args[]) {Demo61 demo = new Demo61();int[] nums = {0,0,1,5,2};System.out.println(demo.isStraight(nums));}
}

这篇关于61-扑克牌中的顺子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/723745

相关文章

34465A-61/2 数字万用表(六位半)

34465A-61/2 数字万用表(六位半) 文章目录 34465A-61/2 数字万用表(六位半)前言一、测DC/AC电压二、测DC/AC电流四、测电阻五、测电容六、测二极管七、保存截图流程 前言 1、6位半数字万用表通常具有200,000个计数器,可以显示最大为199999的数值。相比普通数字万用表,6位半万用表具有更高的测量分辨率和更高的测量准确度,适用于精度比较高的测

61.以太网数据回环实验(4)以太网数据收发器发送模块

(1)状态转移图: (2)IP数据包格式: (3)UDP数据包格式: (4)以太网发送模块代码: module udp_tx(input wire gmii_txc ,input wire reset_n ,input wire tx_start_en , //以太网开始发送信

61、Python之函数高级:为函数添加方法,实现属性可变的装饰器

引言 今天文章的标题,初读起来可能有些拗口,什么叫“为函数添加方法”?但是,如果真正对“Python函数也是对象”这个理念有清晰的理解的话,其实,也是不难理解的,本质上就是给一个对象新增一个自定义方法。通过这样做,我们就可以实现在运行过程中,对装饰器的属性进行动态修改了。 本文的主要内容有: 1、函数对象添加自定义方法 2、属性可变的动态装饰器 函数对象添加自定义方法 其实,这一点

LeetCode 61 Rotate List

题意: 将链表旋转k次,每次旋转表示为1->2->...->N变为N->1->2->...->N-1。 思路: 首先要测链表总长度n,因为k如果比n大,那么旋转整圈是没意义的。 然后求出实际要旋转的次数x,最后就是简单的链表在n-x分割再头尾合并了。 代码: /*** Definition for singly-linked list.* struct ListNode

C语言典型例题61

《C程序设计教程(第四版)——谭浩强》 题目: 习题4.2  一个单位下设三个班组,每个班组人员不固定,需要统计每个班组的平均工资。分别输入3个班组所有职工的工资,当输入-1时,表示输入结束。输出班组号和该班组的平均工资。 代码: //《C程序设计教程(第四版)——谭浩强》//习题4.2 一个单位下设三个班组,每个班组人员不固定,需要统计每个班组的平均工资。//分别输入3个

sqli-labs靶场通关攻略(61-65)

Less-61 步骤一:查看数据库 ?id=1')) and updatexml(1,concat(1,(select database())),1)--+ 步骤二:查看表名 ?id=1')) and updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where ta

61.实现一个算法将链表向右旋转 k 个位置

61. Rotate List 题目 给定一个链表,将链表向右旋转 k 个位置,其中 k 是非负整数。 示例 1: 输入: 1->2->3->4->5->NULL, k = 2 输出: 4->5->1->2->3->NULL 解释: 向右旋转 1 步: 5->1->2->3->4->NULL 向右旋转 2 步: 4->5->1->2->3->NULL 示例 2: 输入: 0->1->2

Atlas阿特拉斯拧紧控制器Focus 61维修扭矩不精确故障

一、AtlasCopco螺母扳手控制器故障原因分析 1. 传感器校准问题    传感器是测量扭矩的核心部件,若传感器未正确校准或受到污染、损坏,将直接影响测量结果的准确性。 2. 内部参数设置不当   Atlas拧紧枪控制器Focus 61的内部参数,如PID控制参数,如果设置不当,会导致控制效果不佳,进而影响扭矩的精确控制。 3. 机械部件磨 长期使用下,阿特拉斯拧紧工具Focus 61控制器的

【剑指offer】扑克牌顺子(字符串)

题目描述 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张_)…他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子…LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面的5

C#控制台实现52张扑克牌的分法

52张牌随机分给4个万玩家,要求每个玩家的牌用一个一维数组表示。 我们采用模拟大法。初始化一副扑克牌,洗牌,发牌。 using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ConsoleApplication