150992025-02-12 19:54:53iSamu7598Következő permutáció (50 pont)cpp11Hibás válasz 0/50300ms508 KiB
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

// 3-1-2 minta-mentesség ellenőrzése
bool is_312_free(const vector<int>& p) {
    int N = p.size();
    // Három különböző index (i < j < k), és a 3-1-2 mintát keresni
    for (int i = 0; i < N; i++) {
        for (int j = i + 1; j < N; j++) {
            for (int k = j + 1; k < N; k++) {
                if (p[i] > p[j] && p[i] > p[k] && p[j] < p[k]) {
                    return false; // 3-1-2 minta található
                }
            }
        }
    }
    return true; // Nincs 3-1-2 minta
}

int main() {
    int N;
    cin >> N;  // Bemeneti N
    vector<int> perm(N);

    // Bemeneti permutáció
    for (int i = 0; i < N; i++) {
        cin >> perm[i];
    }

    // Generáljuk a következő permutációt
    do {
        // Ha a permutáció 3-1-2 mentes, akkor kiírjuk
        if (is_312_free(perm)) {
            for (int i = 0; i < N; i++) {
                cout << perm[i] << " ";
            }
            cout << endl;
            return 0;  // Kilépés a programból, miután megtaláltuk a következőt
        }
    } while (next_permutation(perm.begin(), perm.end()));  // A következő permutáció keresése

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/50
1Hibás válasz0/01ms508 KiB
2Időlimit túllépés0/0291ms316 KiB
3Hibás válasz0/11ms316 KiB
4Hibás válasz0/11ms316 KiB
5Hibás válasz0/11ms316 KiB
6Hibás válasz0/11ms316 KiB
7Hibás válasz0/21ms316 KiB
8Hibás válasz0/21ms340 KiB
9Hibás válasz0/21ms316 KiB
10Hibás válasz0/21ms316 KiB
11Hibás válasz0/11ms316 KiB
12Hibás válasz0/11ms316 KiB
13Hibás válasz0/11ms316 KiB
14Hibás válasz0/11ms316 KiB
15Hibás válasz0/33ms508 KiB
16Hibás válasz0/36ms500 KiB
17Hibás válasz0/3170ms400 KiB
18Időlimit túllépés0/3298ms316 KiB
19Időlimit túllépés0/3300ms316 KiB
20Időlimit túllépés0/3280ms316 KiB
21Időlimit túllépés0/3273ms316 KiB
22Időlimit túllépés0/3284ms316 KiB
23Időlimit túllépés0/3286ms316 KiB
24Időlimit túllépés0/3279ms316 KiB
25Időlimit túllépés0/2275ms316 KiB
26Időlimit túllépés0/2280ms316 KiB