답안 #915625

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
915625 2024-01-24T11:52:24 Z SalihSahin Osumnjičeni (COCI21_osumnjiceni) C++14
0 / 110
295 ms 22292 KB
#include<bits/stdc++.h>
#define pb push_back
#define mp make_pair
using namespace std;
 
const int mod = 998244353;

int main(){
    cin.tie(0); cout.tie(0);
    ios_base::sync_with_stdio(false);
    int n;
    cin>>n;
    pair<int, int> a[n];

    for(int i = 0; i < n; i++){
        cin>>a[i].first>>a[i].second;
    }
    int K = 18, r = 0;
    
    set<pair<int, int> > op;

    int lift[K][n+1];
    for(int l = 0; l < n; l++){
        while(r < n){
            bool ok = 1;
            if(op.size()){
                auto it = op.lower_bound(a[r]);
                if(it != op.end() && (*it).first <= a[r].second) ok = 0;
                if(it != op.begin()){
                    it--;
                    if((*it).second >= a[r].first) ok = 0;
                }
            }

            if(ok){
                op.insert(a[r]);
                r++;
            }
            else break;
        }

        lift[0][l] = r;
        op.erase(a[l]);
        cout<<l<<" "<<r<<endl;
    }


    lift[0][n] = n;
    for(int i = 1; i < K; i++){
        for(int j = 0; j <= n; j++){
            lift[i][j] = lift[i-1][lift[i-1][j]];
        }
    }

    int q, ans, lq, rq;
    cin>>q;
    while(q--){
        cin>>lq>>rq;
        lq--, rq--;

        ans = 1;

        for(int i = K-1; i >= 0; i--){
            if(lift[i][lq] <= rq){
                lq = lift[i][lq];
                ans += (1 << i);
            }
        }

        cout<<ans<<endl;
    }
    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 275 ms 21316 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 14 ms 860 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 14 ms 860 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 295 ms 22292 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 275 ms 21316 KB Output isn't correct
2 Halted 0 ms 0 KB -