import java.util.ArrayList;
import java.util.Arrays;
public class IncrementDigits {
public static ArrayList<Integer> incrementByOne(ArrayList<Integer> digits) {
int carry = 1;
for (int i = digits.size() - 1; i >= 0; i--) {
int sum = digits.get(i) + carry;
if (sum == 10) {
digits.set(i, 0);
carry = 1;
} else {
digits.set(i, sum);
carry = 0;
break;
}
}
if (carry == 1) {
digits.add(0, 1); // Insert 1 at the beginning
}
return digits;
}
public static void main(String[] args) {
ArrayList<Integer> digits = new ArrayList<>(Arrays.asList(9, 9, 9));
incrementByOne(digits);
System.out.print("Result: ");
for (int digit : digits) {
System.out.print(digit + " ");
}
System.out.println();
}
}
/*
run:
Result: 1 0 0 0
*/