private static String formatOptimalSolution(String solution) {
		try {
			char[] s = solution.toCharArray();
			// Initialize the solution with the beginning 2 characters
			String optimalSolution = solution.substring(0, 2);
			for (int i = 2; i < s.length; i ++) {
				// Add each character to the optimal solution
				optimalSolution += s[i];
				// If the current character is equal to the last character in the string
				// and if i % 2 == 0 so that we are only comparing characters
				if (s[i] == s[i - 2] && i % 2 == 0) {
					// Get the number that we're going to increment
					Integer oldNumber = Integer.parseInt(optimalSolution.substring(
							optimalSolution.length() - 2, optimalSolution.length() - 1));
					// Trim the optimal solution to remove the old number
					optimalSolution = optimalSolution.substring(0, optimalSolution.length() - 2);
					// Add the incremented value
					optimalSolution += (oldNumber + 1);
					// Manually increment i so that we skip over the values we just handled
					// in this case.
					i++;
				}
			}
			return optimalSolution;
		} catch (Exception e) {
			// If anything abnormal happens while trying to format the string,
			// just return the non-pretty version of it. This is a fail-safe.
			return solution;
		}
	}