标签:nums 示例 int True 扑克牌 张牌 简单 顺子
题目描述
从若干副扑克牌中随机抽 5 张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。
示例1
输入: [1,2,3,4,5] 输出: True
示例2
输入: [0,0,1,2,5] 输出: True解释:大小王可以当任意牌,即可以当3、4与1、2、5构成顺子1、2、3、4、5
代码
class Solution {
public boolean isStraight(int[] nums) {
int king=0;//大小王的数量
Arrays.sort(nums);//对数组进行排序
for(int i=0;i<4;i++){
if(nums[i]==0){
king++;
}else if(nums[i]==nums[i+1]){
return false;//顺子不能有重复
}
}
return nums[4]-nums[king]<5;//最大牌-最小排<5可以构成顺子
}
}
标签:nums,示例,int,True,扑克牌,张牌,简单,顺子 来源: https://blog.csdn.net/zxw20171828/article/details/123121977
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。