剑指 Offer 61. 扑克牌中的顺子

剑指 Offer 61. 扑克牌中的顺子

地址:剑指 Offer 61. 扑克牌中的顺子

从扑克牌中随机抽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

限制:

数组长度为 5

数组的数取值为 [0, 13] .


import (
    "fmt"
    "sort"
)
func isStraight(nums []int) bool {
    sort.Ints(nums)
    joker := 0

    for i, v := range nums {
        if v == 0 {
            joker += 1
        } else if i > 0 && nums[i] == nums[i-1] {
            return false
        }
    }

    //fmt.Println("joker: ", joker)
    return nums[len(nums)-1] - nums[joker] < 5
}
posted @ 2021-01-26 14:45  ganshuoos  阅读(43)  评论(0编辑  收藏  举报