ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#203795 | #2793. 小明的区间 | tkswls | 100 | 3762ms | 2032kb | C++11 | 779b | 2024-03-23 10:39:24 | 2024-03-23 12:00:20 |
answer
#include<bits/stdc++.h>
#define int long long
#pragma GCC optimize(2)
using namespace std;
int a[100005];
inline int calc(int p, int l, int r) {
p = a[p];
if (p < l) return l - p;
else if (p > r) return p - r;
return 0;
}
int n, l, r, ans, cnt, m, k;
signed main() {
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin >> n >> m >> k;
for (int i = 1; i <= n; i++) {
cin >> a[i];
}
for (int ll = 0, rr = k - 1; rr <= 600; ll++, rr++) {
cnt = calc(1, ll, rr), r = 1;
for (int i = 1; i <= n; i++) {
if (r < i) {
cnt = calc(i, ll, rr), r = i;
}
while (r < n && cnt + calc(r + 1, ll, rr) <= m) {
r++;
cnt += calc(r, ll, rr);
}
ans = max(ans, r - i + 1);
cnt -= calc(i, ll, rr);
}
}
cout << ans;
}
详细
小提示:点击横条可展开更详细的信息
Test #1:
score: 10
Accepted
time: 0ms
memory: 1240kb
input:
10 341 22 335 101 570 125 79 559 563 465 306 546
output:
5
result:
ok single line: '5'
Test #2:
score: 10
Accepted
time: 0ms
memory: 1244kb
input:
10 341 22 335 101 570 125 79 559 563 465 306 546
output:
5
result:
ok single line: '5'
Test #3:
score: 10
Accepted
time: 2ms
memory: 1244kb
input:
300 3041 22 335 101 570 125 79 559 563 465 306 546 482 28 362 492 596 543 28 37 592 205 303 154 293 ...
output:
31
result:
ok single line: '31'
Test #4:
score: 10
Accepted
time: 2ms
memory: 1248kb
input:
300 3041 22 335 101 570 125 79 559 563 465 306 546 482 28 362 492 596 543 28 37 592 205 303 154 293 ...
output:
31
result:
ok single line: '31'
Test #5:
score: 10
Accepted
time: 21ms
memory: 1272kb
input:
3000 3041 22 335 101 570 125 79 559 563 465 306 546 482 28 362 492 596 543 28 37 592 205 303 154 293...
output:
32
result:
ok single line: '32'
Test #6:
score: 10
Accepted
time: 823ms
memory: 2032kb
input:
100000 3041 1 335 101 570 125 79 559 563 465 306 546 482 28 362 492 596 543 28 37 592 205 303 154 29...
output:
34
result:
ok single line: '34'
Test #7:
score: 10
Accepted
time: 458ms
memory: 2024kb
input:
100000 0 22 335 101 570 125 79 559 563 465 306 546 482 28 362 492 596 543 28 37 592 205 303 154 293 ...
output:
5
result:
ok single line: '5'
Test #8:
score: 10
Accepted
time: 824ms
memory: 2028kb
input:
100000 3041 22 335 101 570 125 79 559 563 465 306 546 482 28 362 492 596 543 28 37 592 205 303 154 2...
output:
38
result:
ok single line: '38'
Test #9:
score: 10
Accepted
time: 814ms
memory: 2028kb
input:
100000 3410 33 448 218 7 528 500 189 533 304 97 45 302 255 254 206 419 27 483 224 31 418 212 514 212...
output:
45
result:
ok single line: '45'
Test #10:
score: 10
Accepted
time: 818ms
memory: 2032kb
input:
100000 122582 17 548 524 421 591 272 159 310 153 404 266 398 161 425 468 46 350 209 229 47 573 166 1...
output:
928
result:
ok single line: '928'