244832026-02-12 09:28:32Leventusz09Bizonyításcpp17Futási hiba 0/50787ms6816 KiB
#include <iostream>
#include <vector>
#define DEBUG false
using namespace std;

struct Statement {
    int x;
    int y;
    int t;
};

int RM[500][500];
// -1 => nincs út

int main()
{
    int N, Q;
    cin >> N >> Q;

    for(int i=0; i<N; i++) for(int j=0; j<N; j++) RM[i][j] = -1;

    vector<Statement> T;
    for(int q=0; q<Q; q++){
        int t, x, y;
        x--; y--;
        cin >> t >> x >> y;
        if(t == 1){
            RM[x][y] = q + 1;
            #if DEBUG
            cout << "D" << RM[x][y] << endl;
            #endif
        }else{
            Statement question;
            question.x = x;
            question.y = y;
            question.t = q+1;
            T.push_back(question);
        }
    }

    ///
    for(int _=0; _<1; _++){
        for(int f=0; f<N; f++){
            for(int t=0; t<N; t++){
                if(f==t || RM[f][t] == -1) continue;
                for(int n=0; n<N; n++){
                    if(t==n || f==n || RM[t][n] == -1) continue;
                    int mp = max(RM[f][t], RM[t][n]);
                    if(RM[f][n] == -1) RM[f][n] = mp;
                    if(RM[f][n] > mp) RM[f][n] = mp;
                }
            }
        }
    }

    #if DEBUG
    for(int i=0; i<N; i++){
        for(int j=0; j<N; j++){
            cout << RM[i][j] << " ";
        }
        cout << endl;
    }
    #endif


    for(int i=0; i<T.size(); i++){
        int rm = RM[T[i].x][T[i].y];
        if(rm == -1 || rm > T[i].t) cout << "NEM" << endl;
        else cout << "IGEN" << endl;
    }

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva1ms316 KiB
2Futási hiba52ms2096 KiB
subtask20/10
3Hibás válasz4ms564 KiB
4Hibás válasz35ms820 KiB
5Hibás válasz365ms1780 KiB
6Elfogadva216ms1784 KiB
7Elfogadva211ms1588 KiB
8Hibás válasz6ms820 KiB
9Elfogadva3ms316 KiB
10Hibás válasz41ms820 KiB
11Hibás válasz157ms1520 KiB
12Hibás válasz270ms1588 KiB
subtask30/15
13Elfogadva1ms316 KiB
14Hibás válasz3ms508 KiB
15Hibás válasz2ms316 KiB
16Hibás válasz2ms316 KiB
17Hibás válasz1ms316 KiB
18Hibás válasz2ms508 KiB
19Hibás válasz1ms316 KiB
20Hibás válasz1ms316 KiB
21Hibás válasz1ms316 KiB
22Hibás válasz2ms508 KiB
23Hibás válasz2ms316 KiB
24Hibás válasz1ms544 KiB
25Hibás válasz2ms324 KiB
26Hibás válasz2ms316 KiB
27Hibás válasz1ms460 KiB
28Hibás válasz2ms316 KiB
29Hibás válasz2ms760 KiB
30Hibás válasz1ms508 KiB
31Hibás válasz2ms316 KiB
32Hibás válasz1ms316 KiB
33Hibás válasz1ms316 KiB
34Hibás válasz1ms316 KiB
35Hibás válasz1ms316 KiB
36Hibás válasz2ms316 KiB
37Hibás válasz2ms316 KiB
38Hibás válasz1ms316 KiB
subtask40/25
39Elfogadva1ms316 KiB
40Futási hiba54ms2220 KiB
41Hibás válasz4ms564 KiB
42Hibás válasz35ms820 KiB
43Hibás válasz365ms1780 KiB
44Elfogadva216ms1784 KiB
45Elfogadva211ms1588 KiB
46Hibás válasz6ms820 KiB
47Elfogadva3ms316 KiB
48Hibás válasz41ms820 KiB
49Hibás válasz157ms1520 KiB
50Hibás válasz270ms1588 KiB
51Hibás válasz3ms508 KiB
52Hibás válasz2ms316 KiB
53Hibás válasz2ms316 KiB
54Hibás válasz1ms316 KiB
55Hibás válasz2ms508 KiB
56Hibás válasz1ms316 KiB
57Hibás válasz1ms316 KiB
58Hibás válasz1ms316 KiB
59Hibás válasz2ms508 KiB
60Hibás válasz2ms316 KiB
61Hibás válasz1ms544 KiB
62Hibás válasz2ms324 KiB
63Hibás válasz2ms316 KiB
64Hibás válasz1ms460 KiB
65Hibás válasz2ms316 KiB
66Hibás válasz2ms760 KiB
67Hibás válasz1ms508 KiB
68Hibás válasz2ms316 KiB
69Hibás válasz1ms316 KiB
70Hibás válasz1ms316 KiB
71Hibás válasz1ms316 KiB
72Hibás válasz1ms316 KiB
73Hibás válasz2ms316 KiB
74Hibás válasz2ms316 KiB
75Hibás válasz1ms316 KiB
76Hibás válasz164ms2068 KiB
77Hibás válasz123ms1276 KiB
78Hibás válasz628ms2964 KiB
79Hibás válasz111ms1076 KiB
80Hibás válasz437ms2988 KiB
81Hibás válasz143ms1708 KiB
82Hibás válasz149ms1708 KiB
83Hibás válasz158ms1268 KiB
84Hibás válasz284ms1840 KiB
85Hibás válasz523ms2220 KiB
86Hibás válasz247ms2960 KiB
87Hibás válasz449ms2732 KiB
88Hibás válasz165ms1524 KiB
89Hibás válasz218ms1524 KiB
90Hibás válasz449ms4768 KiB
91Elfogadva787ms2220 KiB
92Hibás válasz442ms6816 KiB
93Elfogadva648ms2220 KiB
94Hibás válasz441ms6812 KiB
95Futási hiba12ms1588 KiB
96Futási hiba7ms1332 KiB
97Futási hiba57ms1384 KiB
98Hibás válasz321ms3492 KiB
99Futási hiba39ms1336 KiB
100Hibás válasz555ms4768 KiB
101Hibás válasz560ms4788 KiB
102Hibás válasz625ms5280 KiB
103Hibás válasz648ms5364 KiB
104Hibás válasz521ms4744 KiB