Submission #855892

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
8558922023-10-02 07:06:20NotLinuxOsumnjičeni (COCI21_osumnjiceni)C++17
110 / 110
420 ms33668 KiB
#include <bits/stdc++.h>
using namespace std;
void solve(){
int n;cin >> n;
int l[n],r[n],lift[n+1][21];
lift[n][0] = n;
for(int i = 0;i<n;i++)cin >> l[i] >> r[i];
set < pair < int , int > > ste;
int rp = 0;
for(int lp = 0;lp < n;lp++){
while(rp != n){
//cout << lp << " : ";for(auto itr : ste)cout << itr.first << "," << itr.second << " ";cout << endl;
if(ste.size() == 0){
// cout << "added " << lp << " " << rp << endl;
ste.insert({l[rp],r[rp]});
rp++;
}
else{
auto it = ste.lower_bound(make_pair(l[rp],1e9 + 7));
pair < int , int > cand1 , cand2;
if(it == ste.end())cand2 = {-1,-1};
else cand2 = *it;
if(it == ste.begin())cand1 = {-1,-1};
else cand1 = *(--it);
// cout << "trying : " << lp << " " << rp << " " << cand1.first << " " << cand1.second << " : " << cand2.first << " " << cand2.second << endl;
if((cand1.first > r[rp] or cand1.second < l[rp]) and (cand2.first > r[rp] or cand2.second < l[rp])){
ste.insert({l[rp],r[rp]});
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...