243512026-02-10 09:31:23PKBFagyasztócpp17Hibás válasz 0/753ms560 KiB
#include <bits/stdc++.h>
using namespace std;

struct Food {
    int S, M, id; //lejarat, minőseg
    bool operator<(const Food &other) const {
        if (S != other.S) return S > other.S;
        return M >= other.M; 
    }
};

int main() {
    int N;
    cin >> N;
    vector<Food> foods;
    for (int i = 1; i <= N; i++) {
        int S, M;
        cin >> S >> M;
        if (M >= 4) {
            foods.push_back({S, M, i});
        }
    }

    priority_queue<Food> pq;
    for (auto f : foods) {
        pq.push(f);
    }

    vector<pair<int,int>> days;
    int day = 1;

    while (pq.size() >= 2) {
        Food first = pq.top(); pq.pop();
        Food second = pq.top(); pq.pop();

        if (first.S >= day && second.S >= day && first.M + second.M >= 9) {
            days.push_back({first.id, second.id});
            day++;
        } else {
            pq.push(first);
            pq.push(second);
            break;
        }
    }

    cout << days.size() << "\n";
    for (auto &d : days) {
        cout << d.first << " " << d.second << "\n";
    }

    return 0;

}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
subtask20/10
2Elfogadva2ms316 KiB
3Hibás válasz1ms316 KiB
4Elfogadva2ms316 KiB
5Hibás válasz1ms492 KiB
6Elfogadva2ms316 KiB
7Elfogadva1ms316 KiB
8Hibás válasz1ms316 KiB
9Elfogadva1ms332 KiB
10Hibás válasz1ms316 KiB
11Elfogadva1ms376 KiB
subtask30/20
12Elfogadva1ms316 KiB
13Elfogadva1ms316 KiB
14Elfogadva1ms316 KiB
15Elfogadva1ms316 KiB
16Elfogadva1ms316 KiB
17Hibás válasz1ms316 KiB
18Elfogadva1ms360 KiB
19Hibás válasz1ms316 KiB
20Hibás válasz1ms408 KiB
21Hibás válasz1ms316 KiB
22Hibás válasz1ms316 KiB
23Elfogadva2ms560 KiB
24Elfogadva2ms316 KiB
25Hibás válasz2ms316 KiB
26Hibás válasz2ms332 KiB
27Hibás válasz3ms316 KiB
28Hibás válasz2ms316 KiB
29Elfogadva1ms316 KiB
30Hibás válasz1ms388 KiB
31Hibás válasz1ms452 KiB
subtask40/15
32Elfogadva1ms316 KiB
33Elfogadva1ms316 KiB
34Elfogadva1ms316 KiB
35Hibás válasz1ms316 KiB
36Hibás válasz1ms316 KiB
37Hibás válasz1ms316 KiB
38Hibás válasz1ms316 KiB
39Hibás válasz1ms316 KiB
40Hibás válasz2ms316 KiB
41Hibás válasz2ms316 KiB
42Hibás válasz2ms316 KiB
43Hibás válasz2ms316 KiB
44Hibás válasz1ms316 KiB
45Hibás válasz1ms316 KiB
46Hibás válasz2ms424 KiB
subtask50/15
47Hibás válasz2ms316 KiB
48Hibás válasz2ms316 KiB
49Hibás válasz2ms316 KiB
50Hibás válasz2ms500 KiB
51Hibás válasz1ms316 KiB
52Hibás válasz1ms332 KiB
53Hibás válasz1ms316 KiB
54Hibás válasz1ms316 KiB
55Elfogadva1ms316 KiB
56Hibás válasz1ms508 KiB
57Hibás válasz1ms316 KiB
58Hibás válasz1ms316 KiB
59Hibás válasz1ms508 KiB
60Hibás válasz1ms316 KiB
61Hibás válasz1ms316 KiB
subtask60/15
62Hibás válasz1ms316 KiB
63Hibás válasz1ms316 KiB
64Hibás válasz2ms316 KiB
65Hibás válasz2ms316 KiB
66Hibás válasz2ms508 KiB
67Hibás válasz1ms316 KiB
68Hibás válasz1ms316 KiB
69Hibás válasz2ms316 KiB
70Hibás válasz1ms316 KiB
71Hibás válasz2ms316 KiB
72Hibás válasz1ms316 KiB
73Hibás válasz1ms316 KiB
74Hibás válasz2ms316 KiB
75Hibás válasz2ms316 KiB
76Hibás válasz1ms400 KiB