結果
| 問題 | No.227 簡単ポーカー | 
| コンテスト | |
| ユーザー |  hayaD | 
| 提出日時 | 2016-08-14 07:29:10 | 
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 2 ms / 5,000 ms | 
| コード長 | 1,320 bytes | 
| コンパイル時間 | 683 ms | 
| コンパイル使用メモリ | 83,600 KB | 
| 実行使用メモリ | 6,820 KB | 
| 最終ジャッジ日時 | 2024-11-07 16:40:01 | 
| 合計ジャッジ時間 | 1,320 ms | 
| ジャッジサーバーID (参考情報) | judge1 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 14 | 
ソースコード
#include <algorithm>
#include <iostream>
#include <iomanip>
#include <map>
#include <numeric>
#include <set>
#include <sstream>
#include <string>
#include <vector>
#include <cmath>
using namespace std;
#define FOR(i,s,e) for (int i = int(s); i != int(e); i++)
#define FORIT(i,c) for (typeof((c).begin()) i = (c).begin(); i != (c).end(); i++)
#define ISEQ(c) (c).begin(), (c).end()
int main(){
	int A[5];
	int count[14] = {};
	FOR(i,0,5){
		cin >> A[i];
		count[A[i]]++;
	}
	int max = 0;
	FOR(i,1,14){
		if (max < count[i]) max = count[i];
	}
	sort(A,A+5);
	string s = "NO HAND";
	if (max == 1 || max == 4 || max == 5) s = "NO HAND";
	else if(A[0] == A[1] && A[1] == A[2] && A[3] == A[4]) s = "FULL HOUSE";
	else if (A[0] == A[1] && A[2] == A[3] && A[3] == A[4]) s = "FULL HOUSE";
	else if (A[0] == A[1] && A[1] == A[2]) s = "THREE CARD";
	else if (A[1] == A[2] && A[2] == A[3]) s = "THREE CARD";
	else if (A[2] == A[3] && A[3] == A[4]) s = "THREE CARD";
	else if (A[0] == A[1] && A[2] == A[3]) s = "TWO PAIR";
	else if (A[0] == A[1] && A[3] == A[4]) s = "TWO PAIR";
	else if (A[1] == A[2] && A[3] == A[4]) s = "TWO PAIR";
	else if (A[0] == A[1]) s = "ONE PAIR";
	else if (A[1] == A[2]) s = "ONE PAIR";
	else if (A[2] == A[3]) s = "ONE PAIR";
	else if (A[3] == A[4]) s = "ONE PAIR";
	cout << s << endl;
	return 0;
}
            
            
            
        