static int[] SubtractArrays(int[] a, int[] b) {
int[] result = new int[Math.Max(a.Length, b.Length)];
for (int i = 0; i < Math.Max(a.Length, b.Length); ++i) {
int value = (i < a.Length ? a[i] : 0) - (i < b.Length ? b[i] : 0) - carry;
int size = result.Length;
for (int i = result.Length - 1; i >= 1; --i)
Array.Resize(ref result, size);
public static void Main() {
int[] a = "5,475,982,475,984,574,238,975,248,522,952,789,229,899,999,999,9"
.Where(c => c >= '0' && c <= '9')
int[] b = "5,475,982,475,984,574,238,975,248,522,952,789,229,899,999,999,8"
.Where(c => c >= '0' && c <= '9')
int[] c = SubtractArrays(a, b);
Console.Write(string.Concat(c));