QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#607645 | #6433. Klee in Solitary Confinement | S_zhi | WA | 87ms | 3836kb | C++14 | 1.2kb | 2024-10-03 15:40:48 | 2024-10-03 15:40:48 |
Judging History
answer
#include <iostream>
#include <vector>
#include <map>
#define int long long
using namespace std ;
int solve(vector<int> q ){
int final_ans = 0;
int sum = 0 , sz = q.size();
for(int i = 0 ; i < sz ; i ++){
if(q[i] == -1) sum ++ ;
}
int s[sz + 1] ;
for(int i = 0 ; i < sz ; i ++ ){
if(i == 0) s[0] = q[0] ;
else s[i] = s[i - 1] + q[i] ;
}
int minn[sz + 1] ;
for(int i = 0 ; i < sz ; i ++ ){
if(i == 0 ) minn[i] = 0 ;
else minn[i] = min(minn[i-1] , s[i]) ;
// cout << minn[i] << ' ' <<
final_ans = max(final_ans , sum + s[i] - minn[i]) ;
}
return final_ans ;
}
signed main(){
map<int , vector<int> > q ;
int n , k ; cin >> n >> k ;
vector <int> a(n) ;
for(int i = 0 ; i < n ; i ++ ){
cin >> a[i] ;
q[a[i]].push_back(-1) ;
q[a[i] + k].push_back(1) ;
// 1 是正主 , 2 还要转化
}
int ans = 0 ;
for(int i = -1e7 ; i <= 1e7 ; i ++ ){
// if(q[i].size()) cout << q[i].size() << endl;
if(q.count(i)== false) continue ;
ans = max(solve(q[i]) , ans) ;
}
cout << ans << endl ;
return 0 ;
}
詳細信息
Test #1:
score: 100
Accepted
time: 52ms
memory: 3632kb
input:
5 2 2 2 4 4 4
output:
5
result:
ok 1 number(s): "5"
Test #2:
score: 0
Accepted
time: 53ms
memory: 3520kb
input:
7 1 3 2 3 2 2 2 3
output:
6
result:
ok 1 number(s): "6"
Test #3:
score: 0
Accepted
time: 52ms
memory: 3636kb
input:
7 1 2 3 2 3 2 3 3
output:
5
result:
ok 1 number(s): "5"
Test #4:
score: 0
Accepted
time: 70ms
memory: 3788kb
input:
9 -100 -1 -2 1 2 -1 -2 1 -2 1
output:
3
result:
ok 1 number(s): "3"
Test #5:
score: 0
Accepted
time: 87ms
memory: 3836kb
input:
200 121649 0 527189 -1000000 -306471 -998939 527189 -1000000 -1000000 0 527189 0 527189 0 527189 -306471 -998939 -306471 -306471 -306471 0 0 527189 527189 1000000 527189 -1000000 1000000 648838 -1000000 -998939 -998939 -998939 0 1000000 -1000000 -998939 527189 1000000 648838 -1000000 1000000 648838 ...
output:
37
result:
ok 1 number(s): "37"
Test #6:
score: 0
Accepted
time: 79ms
memory: 3580kb
input:
200 -454379 -385892 454379 -1000000 373644 -665078 -1000000 -1000000 454379 0 1000000 373644 -1000000 1000000 -385892 -1000000 373644 0 -665078 0 -665078 -1000000 -665078 -385892 -665078 -385892 454379 -665078 -385892 -1000000 454379 1000000 -385892 373644 454379 -1000000 -385892 -1000000 -385892 -1...
output:
40
result:
ok 1 number(s): "40"
Test #7:
score: -100
Wrong Answer
time: 72ms
memory: 3592kb
input:
200 0 451272 -1000000 677452 677452 0 18908 451272 677452 -233144 677452 451272 18908 -1000000 18908 -1000000 0 451272 0 -233144 677452 1000000 451272 1000000 18908 -1000000 0 -233144 451272 1000000 18908 677452 0 677452 0 677452 1000000 -233144 18908 451272 -1000000 -233144 18908 1000000 0 0 -23314...
output:
36
result:
wrong answer 1st numbers differ - expected: '35', found: '36'