| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 264978 | dsjong | Duathlon (APIO18_duathlon) | C++14 | 1084 ms | 73064 KiB | 
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
vector<int>cur;
bool g[12][12], vis[12];
int n, m;
set<pair<pair<int, int>, int>>ans;
void go(){
	for(int i=0;i<cur.size();i++){
		for(int j=i+1;j<cur.size()-1;j++){
			ans.insert({{cur[i], cur[j]}, cur.back()});
		}
	}
	if(cur.size()==n) return;
	for(int i=1;i<=n;i++){
		if(vis[i]) continue;
		if(!cur.empty() && !g[cur.back()][i]) continue;
		cur.push_back(i);
		vis[i]=true;
		go();
		cur.pop_back();
		vis[i]=false;
	}
}
int main(){
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);
	cin>>n>>m;
	for(int i=1;i<=m;i++){
		int x, y;
		cin>>x>>y;
		g[x][y]=g[y][x]=true;
	}
	go();
	cout<<ans.size();
}
Compilation message (stderr)
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
