結果

問題 No.355 数当てゲーム(2)
ユーザー めうめう🎒めうめう🎒
提出日時 2016-04-01 23:17:33
言語 C++11
(gcc 11.4.0)
結果
WA  
実行時間 -
コード長 2,308 bytes
コンパイル時間 927 ms
コンパイル使用メモリ 75,192 KB
実行使用メモリ 25,488 KB
平均クエリ数 21.62
最終ジャッジ日時 2024-07-16 09:11:41
合計ジャッジ時間 5,348 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 27 ms
25,232 KB
testcase_01 AC 27 ms
24,592 KB
testcase_02 AC 25 ms
24,836 KB
testcase_03 AC 26 ms
24,848 KB
testcase_04 AC 25 ms
25,232 KB
testcase_05 AC 25 ms
24,592 KB
testcase_06 AC 24 ms
24,848 KB
testcase_07 AC 24 ms
25,088 KB
testcase_08 AC 24 ms
24,592 KB
testcase_09 AC 27 ms
24,848 KB
testcase_10 AC 26 ms
24,832 KB
testcase_11 AC 25 ms
25,232 KB
testcase_12 AC 25 ms
24,848 KB
testcase_13 AC 25 ms
25,232 KB
testcase_14 WA -
testcase_15 AC 25 ms
24,848 KB
testcase_16 AC 24 ms
25,488 KB
testcase_17 AC 25 ms
24,592 KB
testcase_18 AC 25 ms
24,848 KB
testcase_19 AC 24 ms
24,976 KB
testcase_20 AC 24 ms
24,824 KB
testcase_21 AC 25 ms
25,208 KB
testcase_22 AC 26 ms
25,208 KB
testcase_23 AC 25 ms
25,208 KB
testcase_24 AC 25 ms
24,568 KB
testcase_25 AC 25 ms
24,952 KB
testcase_26 AC 25 ms
24,824 KB
testcase_27 AC 25 ms
24,568 KB
testcase_28 AC 24 ms
24,568 KB
testcase_29 AC 25 ms
24,952 KB
testcase_30 AC 25 ms
24,952 KB
testcase_31 AC 24 ms
25,208 KB
testcase_32 AC 24 ms
24,952 KB
testcase_33 AC 24 ms
24,824 KB
testcase_34 AC 25 ms
25,208 KB
testcase_35 AC 24 ms
24,556 KB
testcase_36 AC 25 ms
25,196 KB
testcase_37 AC 24 ms
24,812 KB
testcase_38 AC 25 ms
25,196 KB
testcase_39 AC 25 ms
24,940 KB
testcase_40 AC 25 ms
24,940 KB
testcase_41 AC 26 ms
24,940 KB
testcase_42 AC 24 ms
25,196 KB
testcase_43 AC 26 ms
24,556 KB
testcase_44 AC 25 ms
25,016 KB
testcase_45 AC 25 ms
24,940 KB
testcase_46 AC 26 ms
24,812 KB
testcase_47 AC 25 ms
25,196 KB
testcase_48 AC 25 ms
25,196 KB
testcase_49 AC 25 ms
24,556 KB
testcase_50 AC 24 ms
24,812 KB
testcase_51 AC 26 ms
25,196 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <algorithm>
#include <cstdio>
#include <iostream>
#include <map>
#include <math.h>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <string>
#include <vector>
using namespace std;

#define ll long long
#define INF (1 << 30)
#define INFLL (1LL << 60)

int main() {
	bool not_num[10] = {};
	bool in_num[10] = {};
	int use_num[4] = {};
	int X,Y;
	while(true){
		for(int i = 0;i < 10;i++){
			int t1 = 0;
			if(not_num[i]) t1++;
			int check = 0;
			for(int j = 0;j < 10;j++){
				if(not_num[j]) check++;
			}
			if(check == 6) break;
			for(int j = i + 1;j < 10;j++){
				int t2 = t1;
				if(not_num[j]) t2++;
				for(int k = j + 1;k < 10;k++){
					int t3 = t2;
					if(not_num[k]) t3++;
					for(int l = k + 1;l < 10;l++){
						int t4 = t3;
						if(not_num[l]) t4++;
						if(t4 != 0 && t4 != 2) {
							break;
						}
						if(in_num[i] || in_num[j] || in_num[k] || in_num[l]) continue;
						cout << i << " " << j << " " << k << " " << l << endl;
						cin >> X >> Y;
						if(X == 0 && Y == 0){
							not_num[i] = true;
							not_num[j] = true;
							not_num[k] = true;
							not_num[l] = true;
						}else if(X + Y == 2 && t4 == 2){
							if(!not_num[i]) in_num[i] = true;
							if(!not_num[j]) in_num[j] = true;
							if(!not_num[k]) in_num[k] = true;
							if(!not_num[l]) in_num[l] = true;
						}else if(X + Y >= 2){
							break;
						}
						if(X == 4 || (X == 0 && Y == 0)) break;
					}
					if(X + Y >= 3) break;
					if(X == 4 || (X == 0 && Y == 0)) break;
				}
				if(X + Y >= 4) break;
				if(X == 4 || (X == 0 && Y == 0)) break;
			}
			if(X == 4) break;
		}
		if(X == 4) break;
		int how = 0;
		for(int i = 0;i < 10;i++){
			if(not_num[i] == false){
				use_num[how] = i;
				how++;
			}
		}
		for(int i = 0;i < 4;i++){
			for(int j = 0;j < 4;j++){
				if(i == j) continue;
				for(int k = 0;k < 4;k++){
					if(k == i || k == j) continue;
					for(int l = 0;l < 4;l++){
						if(l == i || l == j || l == k) continue;
						cout << use_num[i] << " " << use_num[j] << " " << use_num[k] << " " << use_num[l] << endl;
						cin >> X >> Y;
						if(X == 4) break;
						if(Y >= 2) break;
					}
					if(Y >= 3) break;
					if(X == 4) break;
				}
				if(Y >= 4) break;
				if(X == 4) break;
			}
			if(X == 4) break;
		}
		break;
	}
	return 0;
}
0