Submission #1324045

#TimeUsernameProblemLanguageResultExecution timeMemory
1324045sh_qaxxorov_571Exhibition (JOI19_ho_t2)C++20
0 / 100
1 ms332 KiB
#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

// Surat strukturasi
struct Picture {
    int s, v;
};

// Suratlarni qiymati (V) bo'yicha tartiblash uchun funksiya
bool comparePictures(const Picture& a, const Picture& b) {
    return a.v < b.v;
}

int main() {
    // Tezkor kiritish-chiqarish
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int N, M;
    cin >> N >> M;

    vector<Picture> pics(N);
    for (int i = 0; i < N; i++) {
        cin >> pics[i].s >> pics[i].v;
    }

    vector<int> frames(M);
    for (int i = 0; i < M; i++) {
        cin >> frames[i];
    }

    // Suratlarni qiymati bo'yicha, ramkalarni o'lchami bo'yicha tartiblaymiz
    sort(pics.begin(), pics.end(), comparePictures);
    sort(frames.begin(), frames.end());

    int ans = 0;
    int frame_ptr = M - 1; // Eng katta ramkadan boshlaymiz

    // Suratlarni eng qimmatlisidan boshlab tekshiramiz
    for (int i = N - 1; i >= 0; i--) {
        // Agar surat joriy ramkaga sig'sa
        if (frame_ptr >= 0 && pics[i].s <= frames[frame_ptr]) {
            ans++;
            frame_ptr--; // Bu ramka band bo'ldi, keyingisiga o'tamiz
        }
    }

    cout << ans << endl;

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...