# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
253095 | Sprdalo | Baloni (COCI15_baloni) | C++17 | 1164 ms | 92528 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
using namespace std;
#define int ll
typedef long long ll;
typedef long double ld;
typedef pair<int, int> pi;
typedef pair<ll, ll> pl;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef vector<double> vd;
typedef vector<bool> vb;
typedef vector<char> vc;
typedef vector<string> vs;
typedef vector<pi> vp;
typedef vector<pl> vpl;
set<int> s[1000010];
set<int> m;
signed main()
{
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
cerr.tie(nullptr);
int n, sol = 0;
cin >> n;
for (int i = 0; i < n; ++i){
int x;
cin >> x;
s[x].insert(i);
m.insert(-x);
}
while(1){
if (m.empty()) break;
++sol;
int h = -1 * *m.begin(), l = -1;
while(1){
auto it = s[h].upper_bound(l);
if (it == s[h].end()) break;
int ind = *it;
s[h].erase(ind);
if (s[h].empty()){
m.erase(-h);
}
--h;
l = ind;
}
}
cout << sol << '\n';
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |