# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
829925 | tolbi | Duathlon (APIO18_duathlon) | C++17 | 92 ms | 11888 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.
#pragma optimize("Bismillahirrahmanirrahim")
//█▀█─█──█──█▀█─█─█
//█▄█─█──█──█▄█─█■█
//█─█─█▄─█▄─█─█─█─█
//Allahuekber
//ahmet23 orz...
//FatihSultanMehmedHan
//YavuzSultanSelimHan
//AbdulhamidHan
//Sani buyuk Osman Pasa Plevneden cikmam diyor
#define author tolbi
#include <bits/stdc++.h>
using namespace std;
#define deci(x) int x;cin>>x;
#define decstr(x) string x;cin>>x;
#define sortarr(x) sort(x.begin(), x.end())
#define sortrarr(x) sort(x.rbegin(), x.rend())
#define rev(x) reverse(x.begin(), x.end())
#define cinarr(x) for (auto &it : x) cin>>it;
#define coutarr(x) for (auto &it : x) cout<<it<<" ";cout<<endl;
#define tol(bi) (1LL<<((int)(bi)))
#define endl '\n'
typedef long long ll;
mt19937 ayahya(chrono::high_resolution_clock().now().time_since_epoch().count());
int32_t main(){
int T = 1;
int tno = 0;
while (T-(tno++)){
ll ans = 0;
deci(n);deci(m);
vector<vector<int>> arr(n);
for (int i = 0; i < m; ++i)
{
deci(u);deci(v);
arr[u-1].push_back(v-1);
arr[v-1].push_back(u-1);
}
auto dene = [&](int a, int b, int c)->bool{
if (a==b || b==c || a==c) return false;
vector<vector<int>> dp(n,vector<int>(tol(n),-1));
auto f = [&](int node, int mask, auto f)->int{
if (dp[node][mask]!=-1) return dp[node][mask];
if (node==c){
if (mask&tol(b)) return true;
return false;
}
dp[node][mask]=0;
for (int i = 0; i < arr[node].size(); i++){
if (tol(arr[node][i])&mask) continue;
mask+=tol(arr[node][i]);
if (f(arr[node][i],mask,f)){
return dp[node][mask]=1;
}
mask-=tol(arr[node][i]);
}
return dp[node][mask];
};
//if (f(a,tol(a),f)) cout<<a<<" "<<b<<" "<<c<<endl;
return f(a,tol(a),f);
};
for (int i = 0; i < n; i++){
for (int j = 0; j < n; j++){
for (int k = 0; k < n; k++){
if (dene(i,j,k)) ans++;
}
}
}
cout<<ans<<endl;
}
}
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... |