제출 #1358494

#제출 시각아이디문제언어결과실행 시간메모리
1358494po_rag526Matryoshka (JOI16_matryoshka)C++20
0 / 100
0 ms344 KiB
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define F first 
#define S second
#define pb push_back
#define ins insert
#define pf push_front
#define lb lower_bound
#define ub upper_bound
#define yes cout << "YES" << endl
#define no cout << "NO" << endl
#define srt(p) sort(p.begin() , p.end())
#define rvr(p) reverse(p.begin() , p.end())
#define all(p) p.begin() , p.end()
//#pragma GCC optimize("Ofast , unroll-loops")
//#pragma GCC target("avx2")
const int INF = 1e6 , MOD = 998244353 , MAX = 2e5 + 5;
int dx[8] = {-1 , -1 , -1 , 0 , 0 , 1 , 1 , 1};
int dy[8] = {-1 , 0 , 1 , -1 , 1 , -1 , 0 , 1};

bool is_prime(int n) {
	if(n == 1 or n == 0) return false;
	if(n == 2) return true;
	if(n % 2 == 0) return false;
	for(int i = 3; i <= sqrt(n); i += 2) {
		if(n % i == 0) return false;
	}
	return true;
}

struct Edge {
    int u , v , w;
};

void solve(){
    int n , q;
    cin >> n >> q;
    vector<pair<int , int>> vt(n);
    for(int i = 0; i < n; ++ i) {
        cin >> vt[i].F >> vt[i].S;
    }
    while(q--) {
        int a , b;
        cin >> a >> b;
        vector<pair<int , int>> doll;
        for(int i = 0; i < n; ++ i) {
            if(a <= vt[i].F and vt[i].F <= b) {
                doll.pb(vt[i]);
            }
        }
        if(doll.size() == 0 || doll.size() == 1) {
            cout << doll.size() << endl;
            continue;
        }
        srt(doll);
        int ans = 0;
        for(int i = 1; i < doll.size(); ++ i) {
            if(doll[i].S >= doll[i - 1].S && doll[i].F >= doll[i - 1].F) {
                ans++;
            }
        }
        cout << doll.size() - (ans + 1) << endl;
    }
}

signed main() {
    // freopen("input.txt","r",stdin);
    // freopen("output.txt","w",stdout);
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    //cout.tie(nullptr);
    int t = 1;
    //cin >> t;
    while(t--) {
        solve();
    }
    // cerr << endl << "Time elapsed: " << clock() * 1000.0 / CLOCKS_PER_SEC << " ms" << endl;
}
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…