// BEGIN CUT HERE int main( int argc, char* argv[] ) { { int AARRAY[] = {6,8,8,7,7}; vector <int> A( AARRAY, AARRAY+ARRSIZE(AARRAY) ); BubbleSortWithReversals theObject; eq(0, theObject.getMinSwaps(A, 1),0); } { int AARRAY[] = {7,2,2,13,5,5,2}; vector <int> A( AARRAY, AARRAY+ARRSIZE(AARRAY) ); BubbleSortWithReversals theObject; eq(1, theObject.getMinSwaps(A, 2),3); } { int AARRAY[] = {12,5,1,10,12,6,6,10,6,8}; vector <int> A( AARRAY, AARRAY+ARRSIZE(AARRAY) ); BubbleSortWithReversals theObject; eq(2, theObject.getMinSwaps(A, 2),12); } { int AARRAY[] = {2,3,1}; vector <int> A( AARRAY, AARRAY+ARRSIZE(AARRAY) ); BubbleSortWithReversals theObject; eq(3, theObject.getMinSwaps(A, 2),1); } { int AARRAY[] = {482,619,619,601,660,660,691,691,77,77,96,77}; vector <int> A( AARRAY, AARRAY+ARRSIZE(AARRAY) ); BubbleSortWithReversals theObject; eq(4, theObject.getMinSwaps(A, 9),22); } return 0; }
// BEGIN KAWIGIEDIT TESTING // Generated by KawigiEdit 2.1.4 (beta) modified by pivanof bool KawigiEdit_RunTest(int testNum, vector <int> p0, int p1, bool hasAnswer, int p2) { cout << "Test " << testNum << ": [" << "{"; for (int i = 0; int(p0.size()) > i; ++i) { if (i > 0) { cout << ","; } cout << p0[i]; } cout << "}" << "," << p1; cout << "]" << endl; BubbleSortWithReversals *obj; int answer; obj = new BubbleSortWithReversals(); clock_t startTime = clock(); answer = obj->getMinSwaps(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; }