using System;
using System.Collections.Generic;
class Program
{
static List<int> IncrementByOne(List<int> digits) {
int carry = 1;
for (int i = digits.Count - 1; i >= 0; i--) {
digits[i] += carry;
if (digits[i] == 10) {
digits[i] = 0;
carry = 1;
}
else {
carry = 0;
break;
}
}
if (carry == 1) {
digits.Insert(0, 1);
}
return digits;
}
static void Main()
{
List<int> digits = new List<int> { 9, 9, 9 };
IncrementByOne(digits);
Console.Write("Result: ");
foreach (int digit in digits) {
Console.Write(digit + " ");
}
Console.WriteLine();
}
}
/*
run:
Result: 1 0 0 0
*/