fork download
  1. #include <iostream>
  2. #include <sstream>
  3. #include <set>
  4. #include <fstream>
  5. #include <algorithm>
  6. #include <cctype>
  7. #include <iomanip>
  8. #include <vector>
  9. #include <map>
  10. #include <queue>
  11. #include <numeric>
  12. #include <string>
  13. #include <cmath>
  14. #include <climits>
  15. #include <stack>
  16. #include <complex>
  17. #include <cstdlib>
  18. #include <cstring>
  19. #include <array>
  20. #include <unordered_map>
  21. #include <unordered_set>
  22. #include <functional>
  23. #include <bitset>
  24. #include <cassert>
  25. #include <tuple>
  26.  
  27. using namespace std;
  28. typedef long long ll;
  29. typedef long double ld;
  30. const int mod = 998244353;
  31. const int N = 2e5, LOG=19;
  32. //const int mod = 1e9 + 7;
  33.  
  34. void solve() {
  35. int n;
  36. cin>>n;
  37. vector <int> a(n);
  38. int mn=0;
  39. bool g=1;
  40. for (int i=0;i<n;i++) {
  41. cin>>a[i];
  42. if (a[i]<=mn) {
  43. g=0;
  44. } else if (a[i]==mn+1) {
  45. mn++;
  46. continue;
  47. } else {
  48. int k=a[i]-mn-1;
  49. if (k==1) {
  50. mn+=2;
  51. continue;
  52. } else {
  53. mn++;
  54. continue;
  55. }
  56. }
  57. }
  58. cout<<(g ? "YES\n" : "NO\n");
  59.  
  60. }
  61. int main() {
  62. ios_base::sync_with_stdio(false);
  63. cin.tie(nullptr);
  64. int t=1;
  65. cin>>t;
  66. while (t--) {
  67. solve();
  68. }
  69. return 0;
  70. }
Success #stdin #stdout 0.01s 5276KB
stdin
Standard input is empty
stdout
YES