Diff to submission s708

dive.C

--- c4.s708.t114.p15.c11.0.dive.C
+++ c4.s790.t114.p15.c11.0.dive.C
@@ -13,6 +13,5 @@
 
                 char bg[M][N];
-                char f1[M][N];
-                char f2[M][N];
+                char f[M][N];
                 int lf1, lf2, rf1, rf2, tf1, tf2, bf1, bf2;
 
@@ -26,5 +25,4 @@
                         {
                                 if (p[j] == C) {
-                                        f1[i][j] = p[j];
                                         if (i < tf1) tf1 = i;
                                         if (i > bf1) bf1 = i;
@@ -38,4 +36,13 @@
                 }
                 
+                for (int i = 0; i < M; i++) {
+                        for (int j = 0; j < N; j++) {
+                                if (C == '0')
+                                        f[i][j] = '1';
+                                else
+                                        f[i][j] = '0';
+                        }
+                }
+
                 for (int i = 0; i < M; i++)
                 {
@@ -45,5 +52,5 @@
                         {
                                 if (p[j] == C) {
-                                        f2[i][j] = p[j];
+                                        f[i][j] = p[j];
                                         if (i < tf2) tf2 = i;
                                         if (i > bf2) bf2 = i;
@@ -62,5 +69,5 @@
                 for (int i = tf2; i <= bf2; i++) {
                         for (int j = lf2; j <= rf2; j++) {
-                                if (i + dy >= 0 && i + dy < M && j + dx >= 0 && j + dx < N && f2[i][j] == C)
+                                if (i + dy >= 0 && i + dy < M && j + dx >= 0 && j + dx < N && f[i][j] == C)
                                         bg[i + dy][j + dx] = C;
                         }