Submission #1173319

#TimeUsernameProblemLanguageResultExecution timeMemory
1173319Muhammet철인 이종 경기 (APIO18_duathlon)C++20
5 / 100
1095 ms472 KiB
#include "bits/stdc++.h"

using namespace std;
 
#define ll long long
#define SZ(s) (int)s.size()

const int N = 5e1 + 5;
const int M = 1e9 + 7;

// vector <int> v[N], vis;

int b[N], n, m, cn, ans;

bool mp[N][N], vis[N][N][N];

int main() {
    ios_base::sync_with_stdio(false); cin.tie(nullptr);

    cin >> n >> m;
    vector <int> v1, v2;
    for(int i = 1; i <= m; i++) {
        int u1, u2;
        cin >> u1 >> u2;
        mp[u1][u2] = mp[u2][u1] = true;
        // v[u1].push_back(u2);
        // v[u2].push_back(u1);
    }
    for(int i = 1; i <= n; i++) {
        v1.push_back(i);
    }

    do {
        // cout << v1[0] << ' ';
        for(int i = 1; i < n; i++) {
            if(!mp[v1[i-1]][v1[i]]) break;
            for(int j = 1; j < i; j++) {
                if(!vis[v1[0]][v1[j]][v1[i]]) ans++;
                vis[v1[0]][v1[j]][v1[i]] = true;
            }
        }
        // cout << '\n';
    } while(next_permutation(v1.begin(), v1.end()));

    cout << ans << '\n';

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...