Submission #1354394

#TimeUsernameProblemLanguageResultExecution timeMemory
1354394sallyCarnival (EGOI23_carnival)C++20
40 / 100
1096 ms1400 KiB
#include<iostream>
#include<vector>
#include<cstring>
#include<deque>
#include<bits/stdc++.h>
#define rep(i, x) for(int i=0; i<x; i++)
using namespace std;
const int mx = 1005;
bool ok[mx][mx];
vector<int> cnt(mx, 0);
int main() {
    int N;
    cin>>N;
    memset(ok, true, sizeof(ok));
    for(int i=1; i<N; i++) {
        ok[i][i] = false;
        for(int j=i; j>=1; j--) {
            int c;
            cin>>c;
            if(j<=i/2) {
                ok[i][c] = false;
                ok[c][i] = false;
            }
        }
    }
    vector<int> ans(N);
    for(int i=0; i<N; i++) ans[i] = i;
    do{
        bool flag = true;
        for(int i=0; i<N-1; i++) {
            if(!ok[ans[i]][ans[i+1]] || !ok[ans[i+1]][ans[i]]) {
                flag = false;
                break;
            }
        }
        if(!flag) continue;
        for(int i:ans) cout<<i<<' ';
        break;
    }while(next_permutation(ans.begin(), ans.end()));
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...