func_code_string: #include <bits/stdc++.h>   using namespace std;   int a[101], b[101], g[101][101];   int main() {     int i, j, n, k;     scanf( %d , &n);     for (i = 1; i <= n; i++) scanf( %d , &a[i]);     for (i = 1; i <= n; i++) scanf( %d , &b[i]);     memset(g, 0, sizeof(g));     for (i = 1; i <= n; i++) {       if (i + b[i] <= n) g[i][i + b[i]] = g[i + b[i]][i] = 1;       if (i - b[i] >= 1) g[i][i - b[i]] = g[i - b[i]][i] = 1;     }     for (k = 1; k <= n; k++) {       for (i = 1; i <= n; i++) {         for (j = 1; j <= n; j++) {           if (g[i][k] && g[k][j]) g[i][j] = 1;         }       }     }     bool flag = 1;     for (i = 1; i <= n; i++) {       if (i == a[i]) continue;       if (g[i][a[i]] == 0) flag = 0;       if (flag == 0) break;     }     if (flag)       printf( YES n );     else       printf( NO n );   }   