func_code_string: #include <bits/stdc++.h>   using namespace std;   int G[23][23], n, m;   bool check() {     for (int i = 1; i <= n; ++i) {       int cnt = 0;       for (int j = 1; j <= m; ++j) cnt += G[i][j] != j;       if (cnt > 2) return false;     }     return true;   }   int main(int argc, char const *argv[]) {     cin >> n >> m;     for (int i = 1; i <= n; ++i)       for (int j = 1; j <= m; ++j) scanf( %d , &G[i][j]);     if (check()) {       cout <<  YES  << endl;       return 0;     }     for (int i = 1; i <= m; ++i)       for (int j = i + 1; j <= m; ++j) {         for (int k = 1; k <= n; ++k) swap(G[k][i], G[k][j]);         if (check()) {           cout <<  YES  << endl;           return 0;         }         for (int k = 1; k <= n; ++k) swap(G[k][i], G[k][j]);       }     cout <<  NO  << endl;     return 0;   }   