Go語言實現 劍指offer 撲克牌順子

2021-10-01 07:59:44 字數 909 閱讀 5856

​該題目**於牛客網《劍指offer》專題。

ll今天心情特別好,因為他去買了一副撲克牌,發現裡面居然有2個大王,2個小王(一副牌原本是54張_)…他隨機從中抽出了5張牌,想測測自己的手氣,看看能不能抽到順子,如果抽到的話,他決定去買體育彩票,嘿嘿!!「紅心a,黑桃3,小王,大王,方片5」,「oh my god!」不是順子…ll不高興了,他想了想,決定大\小 王可以看成任何數字,並且a看作1,j為11,q為12,k為13。上面的5張牌就可以變成「1,2,3,4,5」(大小王分別看作2和4),「so lucky!」。ll決定去買體育彩票啦。現在,要求你使用這幅牌模擬上面的過程,然後告訴我們ll的運氣如何, 如果牌能組成順子就輸出true,否則就輸出false。為了方便起見,你可以認為大小王是0。

go語言實現:

func

iscontinuous

(array [

]int

)bool

​ max :=-1

min :=

14 repetition :=[14

]int

for_

, number :=

range array

//0繼續

if number ==

0//number作index

repetition[number]

++//對應元素預設為0,++變為1,如果牌重複則大於1

if repetition[number]

>

1//第一輪迴圈max=min,之後會區分開

if number > max

if number < min

}//判斷差值

if max-min <

5return

false

}

Go語言實現 劍指offer 題目彙總

所列題目與牛客網 劍指offer 專題相對應。陣列 和為s的兩個數字 和為s的連續正數序列 連續子陣列的最大和 數字在排序陣列 現的次數 陣列中只出現一次的數字 旋轉陣列的最小數字 陣列中的逆序對 最小的k個數 陣列 現次數超過一半的數字 把陣列排成最小的數 陣列中重複的數字 滑動視窗的最大值 構建...

Go語言實現 劍指offer 剪繩子

該題目 於牛客網 劍指offer 專題。給你一根長度為n的繩子,請把繩子剪成整數長的m段 m n都是整數,n 1並且m 1 每段繩子的長度記為k 0 k 1 k m 請問k 0 xk 1 x xk m 可能的最大乘積是多少?例如,當繩子的長度是8時,我們把它剪成長度分別為2 3 3的三段,此時得到的...

Go語言實現 劍指offer 跳台階

該題目 於牛客網 劍指offer 專題。乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法 先後次序不同算不同的結果 1階 共1種跳法 2階 共2種跳法 3階 共3種跳法 n階 先跳1級,還剩n 1級,跳法是f n 1 先跳2級,還剩n 2級,跳法是f n 2 ...