Backtracking Template
public int backtrack(STATE curr, OTHER_ARGUMENTS...) { if (BASE_CASE) { // TODO: modify answer return 0; }
int ans = 0;
for (ITERATE_OVER_INPUT) { // TODO: modify current state ans += backtrack(curr, OTHER_ARGUMENTS...); // TODO: undo modification of current state }
return ans;}