QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#874139#9865. DollszzlqaqWA 140ms5872kbC++141.3kb2025-01-27 16:56:292025-01-27 16:56:30

Judging History

你现在查看的是最新测评结果

  • [2025-01-27 16:56:30]
  • 评测
  • 测评结果:WA
  • 用时:140ms
  • 内存:5872kb
  • [2025-01-27 16:56:29]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
const int N=1e5;
int t,n,a[N+5],sta[21][N+5],sti[21][N+5],cnt,nw,ans,tz[N+5],b[N+5],ma[N+5],mi[N+5],tp;
int inline g_max(int l,int r){
  int x=log2(r-l+1);
  return max(sta[x][l],sta[x][r-(1<<x)+1]);
}
int inline g_min(int l,int r){
  int x=log2(r-l+1);
  return min(sti[x][l],sti[x][r-(1<<x)+1]);
}
bool inline pj(int l,int r,int l2,int r2){
	return (r+1==l2)||(r2+1==l);
}
int qwq,T;
bool inline check(int l,int r){if(T==10&&n==10000)cout<<l<<" "<<r<<"qwq"<<"\n";
	qwq+=r-l+1;
	if(qwq>=5000000)exit(0);
	tp=0;
  for(int i=l;i<=r;i++)b[i-l+1]=a[i];
  sort(b+1,b+r-l+1+1);
  for(int i=1;i<=r-l+1;i++)tz[b[i]]=i;
  for(int i=l;i<=r;i++){
  tp++;
  ma[tp]=mi[tp]=tz[a[i]];
  while(tp>1&&pj(mi[tp],ma[tp],mi[tp-1],ma[tp-1])){tp--;mi[tp]=min(mi[tp],mi[tp+1]);ma[tp]=max(ma[tp],ma[tp+1]);}
  }
  return (tp==1);
}
int main(){
  ios::sync_with_stdio(false);
  cin.tie(0);cout.tie(0);
  cin>>t;T=t;
  while(t--){
  cin>>n;
  for(int i=1;i<=n;i++)cin>>a[i];
  nw=1;ans=0;
  for(;nw<=n;){cnt=0;
  for(int i=1;i<=n-nw+1;i<<=1)
  if(check(nw,nw+i-1))cnt=i;
  int l=0,r=min(n-cnt-nw+1,cnt-1);
  while(l<r){
  int mid=l+r+1>>1;
  if(check(nw,nw+cnt+mid-1))l=mid;
  else r=mid-1;
  }
  nw=nw+cnt+l;
  ans++;
  }
  cout<<n-ans<<"\n";
  }
}

详细

Test #1:

score: 100
Accepted
time: 0ms
memory: 5692kb

input:

8
4
2 1 4 3
4
1 4 2 3
4
3 1 4 2
5
1 3 5 2 4
5
1 4 2 5 3
5
2 5 3 1 4
6
1 3 6 5 2 4
6
2 5 1 3 6 4

output:

3
3
2
3
3
3
4
4

result:

ok 8 numbers

Test #2:

score: 0
Accepted
time: 2ms
memory: 3840kb

input:

5913
1
1
2
1 2
2
2 1
3
1 2 3
3
1 3 2
3
2 1 3
3
2 3 1
3
3 1 2
3
3 2 1
4
1 2 3 4
4
1 2 4 3
4
1 3 2 4
4
1 3 4 2
4
1 4 2 3
4
1 4 3 2
4
2 1 3 4
4
2 1 4 3
4
2 3 1 4
4
2 3 4 1
4
2 4 1 3
4
2 4 3 1
4
3 1 2 4
4
3 1 4 2
4
3 2 1 4
4
3 2 4 1
4
3 4 1 2
4
3 4 2 1
4
4 1 2 3
4
4 1 3 2
4
4 2 1 3
4
4 2 3 1
4
4 3 1 2
4...

output:

0
1
1
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
2
3
3
2
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
3
4
4
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
4
3
3
4
4
3
4
3
3
3
4
3
4
4
4
3
3
3
3
4
4
4
4
3
4
4
3
4
4
4
4
3
3
3
3
4
4
4
3
4
3
3
3
4
3
4
4
3
3
4
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
3
4
4
3
4
4
4
4
4
4
4
...

result:

ok 5913 numbers

Test #3:

score: 0
Accepted
time: 4ms
memory: 5736kb

input:

8064
8
1 2 3 4 5 6 7 8
8
1 2 3 4 5 6 8 7
8
1 2 3 4 5 7 6 8
8
1 2 3 4 5 7 8 6
8
1 2 3 4 5 8 6 7
8
1 2 3 4 5 8 7 6
8
1 2 3 4 6 5 7 8
8
1 2 3 4 6 5 8 7
8
1 2 3 4 6 7 5 8
8
1 2 3 4 6 7 8 5
8
1 2 3 4 6 8 5 7
8
1 2 3 4 6 8 7 5
8
1 2 3 4 7 5 6 8
8
1 2 3 4 7 5 8 6
8
1 2 3 4 7 6 5 8
8
1 2 3 4 7 6 8 5
8
1 2 3...

output:

7
7
7
7
7
7
7
7
7
7
6
7
7
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
7
6
6
7
7
6
7
6
6
6
7
6
7
7
7
6
6
6
6
7
7
7
7
6
7
7
6
7
7
7
7
6
6
6
6
7
7
7
6
7
6
6
6
7
6
7
7
6
6
7
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
7
7
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
6
7
7
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
...

result:

ok 8064 numbers

Test #4:

score: 0
Accepted
time: 4ms
memory: 5736kb

input:

8064
8
2 6 3 4 1 5 7 8
8
2 6 3 4 1 5 8 7
8
2 6 3 4 1 7 5 8
8
2 6 3 4 1 7 8 5
8
2 6 3 4 1 8 5 7
8
2 6 3 4 1 8 7 5
8
2 6 3 4 5 1 7 8
8
2 6 3 4 5 1 8 7
8
2 6 3 4 5 7 1 8
8
2 6 3 4 5 7 8 1
8
2 6 3 4 5 8 1 7
8
2 6 3 4 5 8 7 1
8
2 6 3 4 7 1 5 8
8
2 6 3 4 7 1 8 5
8
2 6 3 4 7 5 1 8
8
2 6 3 4 7 5 8 1
8
2 6 3...

output:

6
6
6
6
6
6
7
7
7
7
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
6
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
6
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
7
7
7
6
7
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
...

result:

ok 8064 numbers

Test #5:

score: 0
Accepted
time: 6ms
memory: 5868kb

input:

8064
8
4 2 5 6 1 3 7 8
8
4 2 5 6 1 3 8 7
8
4 2 5 6 1 7 3 8
8
4 2 5 6 1 7 8 3
8
4 2 5 6 1 8 3 7
8
4 2 5 6 1 8 7 3
8
4 2 5 6 3 1 7 8
8
4 2 5 6 3 1 8 7
8
4 2 5 6 3 7 1 8
8
4 2 5 6 3 7 8 1
8
4 2 5 6 3 8 1 7
8
4 2 5 6 3 8 7 1
8
4 2 5 6 7 1 3 8
8
4 2 5 6 7 1 8 3
8
4 2 5 6 7 3 1 8
8
4 2 5 6 7 3 8 1
8
4 2 5...

output:

6
6
6
6
6
6
6
6
6
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
6
5
5
6
6
5
6
5
5
5
6
5
6
6
6
6
6
6
6
6
6
6
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
...

result:

ok 8064 numbers

Test #6:

score: 0
Accepted
time: 6ms
memory: 5744kb

input:

8064
8
5 7 4 6 1 2 3 8
8
5 7 4 6 1 2 8 3
8
5 7 4 6 1 3 2 8
8
5 7 4 6 1 3 8 2
8
5 7 4 6 1 8 2 3
8
5 7 4 6 1 8 3 2
8
5 7 4 6 2 1 3 8
8
5 7 4 6 2 1 8 3
8
5 7 4 6 2 3 1 8
8
5 7 4 6 2 3 8 1
8
5 7 4 6 2 8 1 3
8
5 7 4 6 2 8 3 1
8
5 7 4 6 3 1 2 8
8
5 7 4 6 3 1 8 2
8
5 7 4 6 3 2 1 8
8
5 7 4 6 3 2 8 1
8
5 7 4...

output:

6
5
6
5
5
5
6
5
6
6
5
5
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
7
6
7
6
6
6
7
6
7
6
6
6
7
6
7
6
6
6
6
6
6
6
6
6
7
6
7
6
6
6
7
6
7
7
6
6
6
6
7
7
6
6
6
6
6
6
6
6
7
6
6
6
6
6
7
6
7
7
6
6
7
6
7
7
7
7
6
6
6
6
6
6
7
6
7
6
6
6
7
6
7
7
6
6
7
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
...

result:

ok 8064 numbers

Test #7:

score: 0
Accepted
time: 5ms
memory: 5740kb

input:

8064
8
7 3 6 8 1 2 4 5
8
7 3 6 8 1 2 5 4
8
7 3 6 8 1 4 2 5
8
7 3 6 8 1 4 5 2
8
7 3 6 8 1 5 2 4
8
7 3 6 8 1 5 4 2
8
7 3 6 8 2 1 4 5
8
7 3 6 8 2 1 5 4
8
7 3 6 8 2 4 1 5
8
7 3 6 8 2 4 5 1
8
7 3 6 8 2 5 1 4
8
7 3 6 8 2 5 4 1
8
7 3 6 8 4 1 2 5
8
7 3 6 8 4 1 5 2
8
7 3 6 8 4 2 1 5
8
7 3 6 8 4 2 5 1
8
7 3 6...

output:

6
6
6
6
6
6
6
6
6
6
6
6
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
6
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
6
6
5
6
6
6
6
6
6
6
6
6
6
6
6
5
5
5
5
6
6
6
6
5
6
6
5
6
6
6
6
5
5
5
5
6
6
6
5
6
5
5
5
6
5
6
6
5
5
6
5
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
5
6
6
5
6
6
6
6
6
6
6
6
6
6
7
6
7
6
6
6
...

result:

ok 8064 numbers

Test #8:

score: 0
Accepted
time: 8ms
memory: 5872kb

input:

10000
9
5 9 3 1 8 2 7 6 4
9
1 7 5 6 2 3 8 4 9
9
5 4 6 8 9 2 3 7 1
9
8 4 6 9 2 5 1 3 7
9
4 5 8 6 2 9 7 1 3
9
7 4 1 8 5 3 6 9 2
9
2 4 3 9 8 1 5 7 6
9
3 2 4 5 7 6 8 9 1
9
5 1 7 3 9 8 6 2 4
9
6 7 4 2 3 8 1 5 9
9
9 3 7 5 6 1 4 8 2
9
2 8 5 1 3 9 7 6 4
9
5 8 9 3 7 4 2 1 6
9
1 2 3 4 7 8 6 5 9
9
7 3 9 8 2 6 ...

output:

7
7
7
7
7
7
7
8
6
7
7
7
7
8
7
7
7
7
7
8
7
7
7
7
6
8
7
7
7
7
7
7
6
7
7
7
8
7
7
7
7
7
8
7
7
7
7
8
7
7
7
8
7
8
7
7
8
7
8
7
7
7
7
7
6
7
7
7
8
7
7
7
6
7
7
7
6
6
7
7
7
7
7
6
7
8
7
8
8
7
7
6
6
7
7
8
7
6
7
7
7
7
7
7
7
7
7
7
7
7
7
7
8
8
7
8
7
7
7
7
7
7
7
7
7
7
7
6
8
6
7
7
7
7
7
7
7
7
6
7
6
7
7
7
7
7
7
7
7
8
...

result:

ok 10000 numbers

Test #9:

score: 0
Accepted
time: 8ms
memory: 5736kb

input:

10000
10
6 5 10 7 2 4 8 9 3 1
10
1 5 4 2 8 9 3 10 7 6
10
10 1 9 7 4 5 2 3 6 8
10
6 3 10 4 1 8 9 7 5 2
10
1 5 9 8 10 4 2 3 7 6
10
1 3 9 6 10 8 4 2 5 7
10
3 10 1 2 9 7 6 5 4 8
10
3 8 2 9 4 5 10 1 6 7
10
8 5 1 6 7 9 4 10 3 2
10
1 8 6 9 7 5 10 2 4 3
10
3 5 8 2 6 4 9 7 1 10
10
10 2 4 3 9 8 5 6 7 1
10
9 6...

output:

8
8
9
7
8
8
8
7
8
8
8
9
8
8
8
8
8
8
8
8
8
8
7
7
7
8
8
8
8
7
9
8
8
7
7
8
8
7
7
8
8
8
8
8
8
8
7
7
8
7
7
8
8
8
7
9
8
8
8
8
8
8
8
8
8
8
8
8
8
9
8
8
7
7
8
9
8
8
8
8
7
9
8
8
8
7
7
8
7
8
8
8
8
8
8
8
8
7
8
7
8
8
8
7
8
8
8
8
8
7
8
8
8
8
8
8
8
7
8
8
7
8
8
8
8
8
8
8
8
8
9
7
8
8
8
7
7
7
9
8
8
8
7
8
8
7
8
7
8
8
...

result:

ok 10000 numbers

Test #10:

score: 0
Accepted
time: 33ms
memory: 5744kb

input:

1000
100
36 19 15 23 80 24 92 12 63 82 17 71 52 53 62 37 30 5 87 14 27 42 47 38 67 39 40 77 6 11 22 58 83 26 86 50 64 54 81 89 60 85 74 55 96 100 2 32 75 49 93 51 41 57 68 10 3 95 79 21 98 69 99 20 56 91 59 76 28 94 66 44 46 70 43 97 7 16 48 29 84 61 9 65 13 31 34 45 33 1 73 72 78 35 88 90 4 25 8 18...

output:

83
82
85
82
82
81
82
82
83
82
81
82
81
83
83
80
83
84
83
84
80
81
80
81
80
82
84
82
84
84
84
83
84
83
84
82
82
86
82
82
83
82
80
82
82
81
81
82
80
80
83
81
83
82
85
83
84
84
83
81
82
81
80
84
84
81
82
83
84
84
84
82
82
83
83
82
82
84
81
80
80
82
81
82
84
84
79
83
83
82
84
81
81
81
84
84
85
83
84
82
...

result:

ok 1000 numbers

Test #11:

score: -100
Wrong Answer
time: 140ms
memory: 5740kb

input:

100
1000
550 971 302 95 28 284 617 922 674 216 841 488 304 342 88 271 306 556 106 206 22 722 319 730 603 112 877 59 910 921 490 973 35 323 495 9 507 869 834 542 391 86 359 69 837 830 498 645 852 974 790 766 255 98 269 231 452 720 728 925 652 214 91 484 878 592 217 763 487 400 868 66 328 195 923 955 ...

output:

822
826
827
836
825
819
833
828
819
825
826
829
825
828
827
823
826
832
827
822
826
833
824
827
819
821
819
824
830
815
833
831
822
828
835
829
827
824
836
829
822

result:

wrong answer Answer contains longer sequence [length = 100], but output contains 41 elements