Exemplo n.º 1
0
bool KawigiEdit_RunTest(int testNum, vector <string> p0, vector <int> p1, bool hasAnswer, string p2) {
	cout << "Test " << testNum << ": [" << "{";
	for (int i = 0; int(p0.size()) > i; ++i) {
		if (i > 0) {
			cout << ",";
		}
		cout << "\"" << p0[i] << "\"";
	}
	cout << "}" << "," << "{";
	for (int i = 0; int(p1.size()) > i; ++i) {
		if (i > 0) {
			cout << ",";
		}
		cout << p1[i];
	}
	cout << "}";
	cout << "]" << endl;
	EllysBulls *obj;
	string answer;
	obj = new EllysBulls();
	clock_t startTime = clock();
	answer = obj->getNumber(p0, p1);
	clock_t endTime = clock();
	delete obj;
	bool res;
	res = true;
	cout << "Time: " << double(endTime - startTime) / CLOCKS_PER_SEC << " seconds" << endl;
	if (hasAnswer) {
		cout << "Desired answer:" << endl;
		cout << "\t" << "\"" << p2 << "\"" << endl;
	}
	cout << "Your answer:" << endl;
	cout << "\t" << "\"" << answer << "\"" << endl;
	if (hasAnswer) {
		res = answer == p2;
	}
	if (!res) {
		cout << "DOESN'T MATCH!!!!" << endl;
	} else if (double(endTime - startTime) / CLOCKS_PER_SEC >= 2) {
		cout << "FAIL the timeout" << endl;
		res = false;
	} else if (hasAnswer) {
		cout << "Match :-)" << endl;
	} else {
		cout << "OK, but is it right?" << endl;
	}
	cout << "" << endl;
	return res;
}
Exemplo n.º 2
0
// BEGIN CUT HERE
void main( int argc, char* argv[] ) {
	{
		string guessesARRAY[] = {"1234", "4321", "1111", "2222", "3333", "4444", "5555", "6666", "7777", "8888", "9999"};
		vector <string> guesses( guessesARRAY, guessesARRAY+ARRSIZE(guessesARRAY) );
		int bullsARRAY[] = {2, 1, 1, 0, 2, 0, 0, 0, 1, 0, 0};
		vector <int> bulls( bullsARRAY, bullsARRAY+ARRSIZE(bullsARRAY) );
		EllysBulls theObject;
		eq(0, theObject.getNumber(guesses, bulls),"1337");
	}
	{
		string guessesARRAY[] = {"0000", "1111", "2222"};
		vector <string> guesses( guessesARRAY, guessesARRAY+ARRSIZE(guessesARRAY) );
		int bullsARRAY[] = {2, 2, 2};
		vector <int> bulls( bullsARRAY, bullsARRAY+ARRSIZE(bullsARRAY) );
		EllysBulls theObject;
		eq(1, theObject.getNumber(guesses, bulls),"Liar");
	}
	{
		string guessesARRAY[] = {"666666", "666677", "777777", "999999"};
		vector <string> guesses( guessesARRAY, guessesARRAY+ARRSIZE(guessesARRAY) );
		int bullsARRAY[] = {2, 3, 1, 0};
		vector <int> bulls( bullsARRAY, bullsARRAY+ARRSIZE(bullsARRAY) );
		EllysBulls theObject;
		eq(2, theObject.getNumber(guesses, bulls),"Ambiguity");
	}
	{
		string guessesARRAY[] = {"000", "987", "654", "321", "100", "010"};
		vector <string> guesses( guessesARRAY, guessesARRAY+ARRSIZE(guessesARRAY) );
		int bullsARRAY[] = {2, 1, 0, 0, 1, 1};
		vector <int> bulls( bullsARRAY, bullsARRAY+ARRSIZE(bullsARRAY) );
		EllysBulls theObject;
		eq(3, theObject.getNumber(guesses, bulls),"007");
	}
	{
		string guessesARRAY[] = {"28", "92", "70", "30", "67", "63", "06", "65",
			"11", "06", "88", "48", "09", "65", "48", "08"};
		vector <string> guesses( guessesARRAY, guessesARRAY+ARRSIZE(guessesARRAY) );
		int bullsARRAY[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
		vector <int> bulls( bullsARRAY, bullsARRAY+ARRSIZE(bullsARRAY) );
		EllysBulls theObject;
		eq(4, theObject.getNumber(guesses, bulls),"54");
	}
	{
		string guessesARRAY[] = {"0294884", "1711527", "2362216", "7666148", "7295642",
			"4166623", "1166638", "2767693", "8650248", "2486509",
			"6138934", "4018642", "6236742", "2961643", "8407361",
			"2097376", "6575410", "6071777", "3569948", "2606380"};
		vector <string> guesses( guessesARRAY, guessesARRAY+ARRSIZE(guessesARRAY) );
		int bullsARRAY[] = {1, 0, 1, 3, 4, 4, 3, 2, 1, 1, 0, 4, 4, 3, 0, 0, 0, 0, 2, 1};
		vector <int> bulls( bullsARRAY, bullsARRAY+ARRSIZE(bullsARRAY) );
		EllysBulls theObject;
		eq(5, theObject.getNumber(guesses, bulls),"4266642");
	}
}