171442025-05-24 19:56:00tomi7Háromszögeléscpp17Wrong answer 0/1003ms820 KiB
#include <bits/stdc++.h>
#include <vector>
#include <algorithm>

extern int query(int x, int y);

int solve(int n) {
    std::vector<std::array<int, 3>> diagonals;

    for (int i = 0; i < n; ++i) {
        for (int j = i + 1; j < n; ++j) {
            // kihagyjuk a szomszédos vagy azonos csúcsokat (nem átlók)
            if ((j - i + n) % n == 1 || (i - j + n) % n == 1 || i == j)
                continue;

            // távolság 0 csúcstól
            int left = std::min((i - 0 + n) % n, (j - 0 + n) % n);
            int right = std::min((0 - i + n) % n, (0 - j + n) % n);
            int d = std::max(left, right);

            diagonals.push_back({d, i, j});
        }
    }

    // növekvő távolság szerint rendezés
    std::sort(diagonals.begin(), diagonals.end());

    // lekérdezés legközelebbi átlóktól kezdve
    for (const auto& tup : diagonals) {
        int i = std::get<1>(tup);
        int j = std::get<2>(tup);
        if (query(i, j)) {
            return i * n + j;
        }
    }

    return -1; // elméletileg nem fordulhat elő, mindig van legalább 1 átló
}
SubtaskSumTestVerdictTimeMemory
subtask10/100
1Wrong answer1ms316 KiB
2Accepted1ms316 KiB
3Wrong answer1ms316 KiB
4Wrong answer1ms316 KiB
5Wrong answer1ms316 KiB
6Wrong answer1ms508 KiB
7Accepted3ms508 KiB
8Wrong answer2ms564 KiB
9Wrong answer2ms564 KiB
10Wrong answer2ms316 KiB
11Wrong answer2ms564 KiB
12Wrong answer2ms540 KiB
13Wrong answer2ms316 KiB
14Wrong answer2ms316 KiB
15Wrong answer2ms820 KiB
16Wrong answer2ms656 KiB
17Wrong answer2ms316 KiB
18Wrong answer2ms316 KiB
19Wrong answer2ms316 KiB
20Wrong answer2ms316 KiB
21Wrong answer2ms316 KiB
22Wrong answer2ms316 KiB
23Wrong answer2ms316 KiB
24Wrong answer2ms508 KiB
25Wrong answer2ms316 KiB
26Wrong answer2ms320 KiB
27Wrong answer2ms572 KiB
28Wrong answer2ms316 KiB
29Wrong answer2ms564 KiB
30Wrong answer2ms316 KiB
31Wrong answer1ms316 KiB
32Wrong answer2ms316 KiB
33Wrong answer2ms508 KiB
34Wrong answer2ms564 KiB
35Wrong answer2ms316 KiB
36Wrong answer2ms316 KiB
37Wrong answer2ms316 KiB
38Wrong answer2ms564 KiB
39Wrong answer2ms316 KiB
40Wrong answer2ms316 KiB