static int runTestCase(int casenum__) {
		switch (casenum__) {
		case 0: {
			int N = 3;
			int K = 2;
			int[] expected__ = { 1, 2 };

			return verifyCase(casenum__, expected__,
					new DeerInZooDivTwo().getminmax(N, K));
		}
		case 1: {
			int N = 3;
			int K = 3;
			int[] expected__ = { 0, 1 };

			return verifyCase(casenum__, expected__,
					new DeerInZooDivTwo().getminmax(N, K));
		}
		case 2: {
			int N = 10;
			int K = 0;
			int[] expected__ = { 10, 10 };

			return verifyCase(casenum__, expected__,
					new DeerInZooDivTwo().getminmax(N, K));
		}
		case 3: {
			int N = 654;
			int K = 321;
			int[] expected__ = { 333, 493 };

			return verifyCase(casenum__, expected__,
					new DeerInZooDivTwo().getminmax(N, K));
		}
		case 4: {
			int N = 100;
			int K = 193;
			int[] expected__ = { 0, 3 };

			return verifyCase(casenum__, expected__,
					new DeerInZooDivTwo().getminmax(N, K));
		}

		// custom cases

		/*
		 * case 5: { int N = ; int K = ; int[] expected__ = ;
		 *
		 * return verifyCase(casenum__, expected__, new
		 * DeerInZooDivTwo().getminmax(N, K)); }
		 */
		/*
		 * case 6: { int N = ; int K = ; int[] expected__ = ;
		 *
		 * return verifyCase(casenum__, expected__, new
		 * DeerInZooDivTwo().getminmax(N, K)); }
		 */
		/*
		 * case 7: { int N = ; int K = ; int[] expected__ = ;
		 *
		 * return verifyCase(casenum__, expected__, new
		 * DeerInZooDivTwo().getminmax(N, K)); }
		 */
		default:
			return -1;
		}
	}