func_code_string: #include <bits/stdc++.h>   using namespace std;   const int N = 300100;   int arr[N];   #pragma warning(disable : 6031)   #pragma warning(disable : 4996)   int t, n;   bool c1[N], c2[N];   int main() {     scanf( %d , &t);     while (t--) {       scanf( %d , &n);       bool f1 = 1, f2 = 1;       bool f3 = 1;       for (int i = 1; i <= n; i++) scanf( %d , arr + i);       memset(c1, 0, sizeof c1);       memset(c2, 0, sizeof c2);       c1[1] = 1;       for (int i = 2; i <= n; i++) {         if (c1[i - 1] && arr[i] >= i - 1) {           c1[i] = 1;         } else {           break;         }       }       c2[n] = 1;       for (int i = n - 1; i >= 1; i--) {         if (c2[i + 1] && arr[i] >= n - i) {           c2[i] = 1;         } else           break;       }       f1 = c1[n];       f2 = c2[1];       f3 = 0;       for (int i = 1; i <= n; i++) {         if (c1[i] && c2[i]) {           f3 = 1;         }       }       if (f1 || f2 || f3)         puts( Yes );       else         puts( No );     }     return 0;   }   