心血來潮之朋友的一道華為筆試題 德州撲克

2021-08-21 16:26:01 字數 1676 閱讀 8499

一副牌中的五張撲克牌,

牌型1:同花順:同一花色的順子

牌型2:四條:四張相同數字+單張

牌型3:葫蘆:三張相同的數字+一對

牌型4:同花:同一花色

牌型5:順子:花色不一樣的順子

牌型6:三條:三張相同+兩張單

牌型7:其他

說明:前面的牌型比後面的牌型大

輸入由五行組成,如:

3 h

4 h5 h

6 h7 h

輸出牌型:1

#include #include #include #include #include #include using namespace std;

enum cardtype

;enum cardresult

;struct cardinfo

;int split(string &str, char &a, char &b)

a = str[0];

b = str[2];

return 0;

}class cardrule

;cardrule::cardrule()

cardrule::~cardrule()

cardresult cardrule::judge(vector& vec)

else if (issitiao(vec))

else if (ishulu(vec))

else if (btonghua)

else if (bshunzi)

else if (issantiao(vec))

else

}bool compare(cardinfo lhs, cardinfo rhs)

bool unique(cardinfo lhs, cardinfo rhs)

void cardrule::sort(vector& vec)

bool cardrule::isshunzi(vector& vec)

}return true;

}bool cardrule::istonghua(vector& vec)

}return true;

}bool cardrule::issitiao(vector& vec)

else

}if (mapcount.size() == 2)

}return false;

}bool cardrule::ishulu(vector& vec)

else

}if (mapcount.size() == 2)

}return false;

}bool cardrule::issantiao(vector& vec)

else

}if (mapcount.size() == 3)

}return false;

}cardtype cardconvert(char c)

return card_type_unknown;

}int main()

vec.push_back(st);

}cardrule crule;

cout << crule.judge(vec) << endl;

} while (true);

return 0;

}

一道華為筆試題 ,記憶體相關

下面一段程式,請說明輸出結果 int tmain intargc,tchar argv 結果為6.0x518 0x500 sizeof int 6 0x0018 4 6 void getmemory char p void test void 請問執行test函式會有什麼樣的結果?答 程式崩潰。因為...

一道C 的筆試題

今天看到一道c 的筆試題,感覺不錯!記錄一下。char str1 abc char str2 abc const char str3 abc const char str4 abc const char str5 abc const char str6 abc cout str1 str2 endl...

華為的一道面試題

通過鍵盤輸入一串小寫字母 a z 組成的字串。請編寫乙個字串壓縮程式,將字串中連續出席的重複字母進行壓縮,並輸出壓縮後的字串。壓縮規則 1 僅壓縮連續重複出現的字元。比如字串 abcbc 由於無連續重複字元,壓縮後的字串還是 abcbc 2 壓縮欄位的格式為 字元重複的次數 字元 例如 字串 yyy...