結果
| 問題 | No.227 簡単ポーカー | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2018-06-14 23:58:42 | 
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 2 ms / 5,000 ms | 
| コード長 | 892 bytes | 
| コンパイル時間 | 483 ms | 
| コンパイル使用メモリ | 64,380 KB | 
| 実行使用メモリ | 6,944 KB | 
| 最終ジャッジ日時 | 2024-06-30 14:37:24 | 
| 合計ジャッジ時間 | 1,184 ms | 
| ジャッジサーバーID (参考情報) | judge1 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 14 | 
ソースコード
#include <stdio.h>
#include <iostream>
using namespace std;
int main(void) {
	int s[5];
	cin >> s[0] >> s[1] >> s[2] >> s[3] >> s[4];
	int box[14];
	//boxの0クリア
	for (int i = 0; i < 14; i++) {
		box[i] = 0;
	}
	//入力値をboxにカウントアップ
	//入力数値をそのまま配列の引数にするので13が溢れてしまうのでboxは14にする
	for (int i = 0; i < 5; i++) {
		box[s[i]]++;
	}
	int cntThree, cntTwo;
	cntThree = 0;
	cntTwo = 0;
	for (int i = 0; i < 14; i++)
	{
		if (box[i] == 3) {
			cntThree++;
		}
		else if (box[i] == 2) {
			cntTwo++;
		}
	}
	if (cntThree == 1 && cntTwo == 1) {
		cout << "FULL HOUSE" << endl;
	}
	else if (cntThree == 1) {
		cout << "THREE CARD" << endl;
	}
	else if (cntTwo == 2) {
		cout << "TWO PAIR" << endl;
	}
	else if (cntTwo == 1) {
		cout << "ONE PAIR" << endl;
	}
	else {
		cout << "NO HAND" << endl;
	}
	return 0;
}
            
            
            
        