func_code_string: #include <bits/stdc++.h>   using namespace std;   int main() {     ios_base::sync_with_stdio(false);     cin.tie(NULL);     cout.tie(NULL);     cout << fixed;     cout.precision(4);     int r, c;     cin >> r >> c;     int a[r][c];     for (int i = 0; i < r; ++i) {       for (int j = 0; j < c; ++j) {         cin >> a[i][j];       }     }     long long sum = 0ll;     if (a[r - 1][c - 1] <= a[r - 2][c - 1] ||         a[r - 1][c - 1] <= a[r - 1][c - 2]) {       cout << -1 <<   n ;       return 0;     }     sum += a[r - 1][c - 1];     for (int i = c - 2; i > 0; --i) {       int choose;       if (a[r - 1][i] != 0)         choose = a[r - 1][i];       else         choose = a[r - 1][i + 1] - 1;       if (choose <= a[r - 1][i - 1] || choose <= a[r - 2][i] ||           choose >= a[r - 1][i + 1]) {         cout << -1 <<   n ;         return 0;       }       a[r - 1][i] = choose;       sum += a[r - 1][i];     }     if (a[r - 1][0] <= a[r - 2][0] || a[r - 1][0] >= a[r - 1][1]) {       cout << -1 <<   n ;       return 0;     }     sum += a[r - 1][0];     for (int i = r - 2; i > 0; --i) {       if (a[i][c - 1] <= a[i - 1][c - 1] || a[i][c - 1] >= a[i + 1][c - 1] ||           a[i][c - 1] <= a[i][c - 2]) {         cout << -1 <<   n ;         return 0;       }       sum += a[i][c - 1];       for (int j = c - 2; j > 0; --j) {         int choose;         if (a[i][j] != 0)           choose = a[i][j];         else           choose = min(a[i][j + 1], a[i + 1][j]) - 1;         if (choose >= a[i][j + 1] || choose >= a[i + 1][j] ||             choose <= a[i][j - 1] || choose <= a[i - 1][j]) {           cout << -1 <<   n ;           return 0;         }         a[i][j] = choose;         sum += a[i][j];       }       if (a[i][0] >= a[i][1] || a[i][0] >= a[i + 1][0] ||           a[i][0] <= a[i - 1][0]) {         cout << -1 <<   n ;         return 0;       }       sum += a[i][0];     }     if (a[0][c - 1] <= a[0][c - 2] || a[0][c - 1] >= a[1][c - 1]) {       cout << -1 <<   n ;       return 0;     }     sum += a[0][c - 1];     for (int i = c - 2; i > 0; --i) {       int choose;       if (a[0][i] != 0)         choose = a[0][i];       else         choose = min(a[0][i + 1], a[1][i]) - 1;       if (choose >= a[0][i + 1] || choose >= a[1][i] || choose <= a[0][i - 1]) {         cout << -1 <<   n ;         return 0;       }       a[0][i] = choose;       sum += a[0][i];     }     if (a[0][0] >= a[1][0] || a[0][0] >= a[0][1]) {       cout << -1 <<   n ;       return 0;     }     sum += a[0][0];     cout << sum <<   n ;     return 0;   }   