Submission #65013


ソースコード

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <iostream>
#include <vector>
#include <algorithm>
#include <climits>
using namespace std;
int main(){
cin.tie(nullptr);
ios_base::sync_with_stdio(false);
int n, k;
cin >> n >> k;
vector<int> a(n + 1), min_idx(1e6 + 1, INT_MAX);
vector<long long> cum(n + 1);
for(int i = 1; i <= n; ++i){
cin >> a[i];
cum[i] = cum[i - 1] + a[i];
min_idx[a[i]] = min(min_idx[a[i]], i);
}
for(int i = 1e6; i >= 1; --i){
min_idx[i - 1] = min(min_idx[i - 1], min_idx[i]);
}
long long res = 0;
for(int i = 2; i <= n; ++i){
int need = max(0, k - a[i]);
if(min_idx[need] < i){
res = max(res, cum[i] - cum[min_idx[need] - 1]);
}
}
cout << res << '\n';
return (0);
}

ステータス

項目 データ
問題 1466 - 2つの仕切り
ユーザー名 syoribu
投稿日時 2020-12-17 17:48:07
言語 C++17
状態 Accepted
得点 10
ソースコード長 823 Byte
最大実行時間 90 ms
最大メモリ使用量 16248 KB

セット

セット 得点 Cases
1 ALL 10 / 10 *

テストケース

ファイル名 状態 実行時間 メモリ使用量 #
in01.text AC 25 ms 4444 KB
1
in02.text AC 33 ms 4460 KB
1
in03.text AC 17 ms 4476 KB
1
in04.text AC 36 ms 5256 KB
1
in05.text AC 89 ms 15556 KB
1
in06.text AC 32 ms 5644 KB
1
in07.text AC 40 ms 7264 KB
1
in08.text AC 35 ms 6372 KB
1
in09.text AC 51 ms 9872 KB
1
in10.text AC 70 ms 12660 KB
1
in11.text AC 38 ms 7792 KB
1
in12.text AC 63 ms 11304 KB
1
in13.text AC 37 ms 6624 KB
1
in14.text AC 88 ms 15272 KB
1
in15.text AC 81 ms 14828 KB
1
in16.text AC 32 ms 5060 KB
1
in17.text AC 75 ms 12916 KB
1
in18.text AC 63 ms 10576 KB
1
in19.text AC 59 ms 10744 KB
1
in20.text AC 90 ms 12824 KB
1
in21.text AC 54 ms 9292 KB
1
in22.text AC 77 ms 14952 KB
1
in23.text AC 54 ms 9212 KB
1
in24.text AC 47 ms 8080 KB
1
in25.text AC 48 ms 8304 KB
1
in26.text AC 70 ms 11924 KB
1
in27.text AC 36 ms 6892 KB
1
in28.text AC 67 ms 12732 KB
1
in29.text AC 65 ms 16188 KB
1
in30.text AC 82 ms 16248 KB
1