提出 #73492191
ソースコード 拡げる
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
template<class T> inline bool chmax(T& a, T b) { if (a < b) { a = b; return 1; } return 0; }
template<class T> inline bool chmin(T& a, T b) { if (a > b) { a = b; return 1; } return 0; }
int main(void){
ll N;
cin >> N;
vector<ll> A(N);
map<ll, vector<ll>> S;
for(int i = 0; i < N; i++) {
cin >> A.at(i);
S[A.at(i)].push_back(i);
}
vector<ll> ans(N, 0);
for(auto[x, D] : S) {
ll idx = D.at(0);
ll cnt = 1;
set<ll> update;
update.insert(idx);
for(int i = x + 1; true; i++) {
if(!S.count(i)) {
break;
}
if(lower_bound(S.at(i).begin(), S.at(i).end(), idx) == S.at(i).end()) {
break;
}
if(ans.at(idx) != 0) {
cnt += ans.at(idx);
break;
}
cnt++;
idx = *lower_bound(S.at(i).begin(), S.at(i).end(), idx);
update.insert(idx);
}
for(auto u : update) {
ans.at(u) = cnt;
cnt--;
}
}
ll res = 0;
for(auto a : ans) {
chmax(res, a);
}
cout << res << endl;
return 0;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | D - Max Straight |
| ユーザ | kashihal |
| 言語 | C++23 (GCC 15.2.0) |
| 得点 | 400 |
| コード長 | 1374 Byte |
| 結果 | AC |
| 実行時間 | 247 ms |
| メモリ | 37840 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 400 / 400 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 01_random_17.txt, 01_random_18.txt, 01_random_19.txt, 01_random_20.txt, 01_random_21.txt, 01_random_22.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 00_sample_00.txt | AC | 1 ms | 3516 KiB |
| 00_sample_01.txt | AC | 1 ms | 3616 KiB |
| 00_sample_02.txt | AC | 1 ms | 3448 KiB |
| 01_random_00.txt | AC | 1 ms | 3620 KiB |
| 01_random_01.txt | AC | 1 ms | 3412 KiB |
| 01_random_02.txt | AC | 1 ms | 3600 KiB |
| 01_random_03.txt | AC | 236 ms | 37840 KiB |
| 01_random_04.txt | AC | 247 ms | 37712 KiB |
| 01_random_05.txt | AC | 84 ms | 17996 KiB |
| 01_random_06.txt | AC | 39 ms | 10772 KiB |
| 01_random_07.txt | AC | 154 ms | 28392 KiB |
| 01_random_08.txt | AC | 26 ms | 5864 KiB |
| 01_random_09.txt | AC | 1 ms | 3736 KiB |
| 01_random_10.txt | AC | 60 ms | 8800 KiB |
| 01_random_11.txt | AC | 60 ms | 8908 KiB |
| 01_random_12.txt | AC | 7 ms | 4020 KiB |
| 01_random_13.txt | AC | 62 ms | 9064 KiB |
| 01_random_14.txt | AC | 2 ms | 3872 KiB |
| 01_random_15.txt | AC | 69 ms | 9424 KiB |
| 01_random_16.txt | AC | 36 ms | 6656 KiB |
| 01_random_17.txt | AC | 212 ms | 30228 KiB |
| 01_random_18.txt | AC | 208 ms | 29568 KiB |
| 01_random_19.txt | AC | 221 ms | 29000 KiB |
| 01_random_20.txt | AC | 152 ms | 21268 KiB |
| 01_random_21.txt | AC | 222 ms | 28380 KiB |
| 01_random_22.txt | AC | 17 ms | 5492 KiB |