撲克牌的順子

2021-09-06 05:55:27 字數 1399 閱讀 9156

題目:從撲克牌中隨機抽5張牌,判斷是不是乙個順子,即這5張牌是不是連續的。2-10為數字本身,a為1,j為11,q為12,k為13,而大小王可以看成任意數字。

答:

#include "

stdafx.h

"#include

#include

using

namespace

std;

#define maxvalue 10000

#define minvalue -1

#define size 14

#define number 5

//撲克牌的順子

bool issort(int arr, int

length)

int count = 0

;

int max =minvalue;

int min =maxvalue;

int hashtab[size] = ;

for (char i = 0; i < length; i++)

if (max

if (min >arr[i])

hashtab[arr[i]]++;

}for (char i = 0; i < length; i++) //

撲克牌有重複,直接返回false

}if (0 == count && max - min == 4) //

1、沒有大小王,最大值與最小值相差4,撲克牌才能連續

else

if (1 == count && ((max - min == 4) || (max - min == 3))) //

2、乙個大小王,最大值與最小值相差4或者3,撲克牌都能連續

else

if ((2 == count && ((max - min == 4) || (max - min == 3

) || (max - min == 2)))) //

3、兩個大小王,最大值與最小值相差4或者3或者2,撲克牌都能連續

return

false;}

int _tmain(int argc, _tchar*argv)

;

for (int i = 0; i < number; i++)

cout

<

if (issort(arr, sizeof(arr)/sizeof(arr[0

])))

else

cout

<

return0;

}

執行介面如下:

撲克牌順子

ll今天心情特別好,因為他去買了一副撲克牌,發現裡面居然有2個大王,2個小王 一副牌原本是54張 他隨機從中抽出了5張牌,想測測自己的手氣,看看能不能抽到順子,如果抽到的話,他決定去買體育彩票,嘿嘿!紅心a,黑桃3,小王,大王,方片5 oh my god 不是順子.ll不高興了,他想了想,決定大 小...

撲克牌順子

題目描述 ll今天心情特別好,因為他去買了一副撲克牌,發現裡面居然有2個大王,2個小王 一副牌原本是54張 他隨機從中抽出了5張牌,想測測自己的手氣,看看能不能抽到順子,如果抽到的話,他決定去買體育彩票,嘿嘿!紅心a,黑桃3,小王,大王,方片5 oh my god 不是順子 ll不高興了,他想了想,...

撲克牌順子

ll今天心情特別好,因為他去買了一副撲克牌,發現裡面居然有2個大王,2個小王 一副牌原本是54張 他隨機從中抽出了5張牌,想測測自己的手氣,看看能不能抽到順子,如果抽到的話,他決定去買體育彩票,嘿嘿!紅心a,黑桃3,小王,大王,方片5 oh my god 不是順子 ll不高興了,他想了想,決定大 小...