Submission #278183

#TimeUsernameProblemLanguageResultExecution timeMemory
278183AKaan37Amusement Park (CEOI19_amusementpark)C++17
42 / 100
3044 ms227808 KiB
//Bismillahirrahmanirrahim //█▀█─█──█──█▀█─█─█ //█▄█─█──█──█▄█─█▄█ //█─█─█▄─█▄─█─█─█─█ #include <bits/stdc++.h> using namespace std; typedef long long lo; typedef pair< lo,lo > PII; typedef pair< lo,PII > PIII; #define fi first #define se second #define mp make_pair #define endl "\n" #define int long long #define pb push_back #define fio() ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL) #define FOR for(int i=1;i<=n;i++) #define mid ((start+end)/2) #define ort ((bas+son)/2) const lo inf = 1000000000000000000; const lo KOK = 100000; const lo LOG = 30; const lo li = 15; const lo mod = 1000000007; int n,m,b[li],a[li],k,flag,t,vis[li],say=1,cevap; int cev=1; string s; vector<PIII> v[li]; map<int,int> mpp; vector<int> vv; inline void check(){ FOR vis[i]=0; int mask=0; int tut=0; for(int i=0;i<n;i++){ int node=vv[i]; for(int j=0;j<(int)v[node].size();j++){ if(vis[v[node][j].fi])continue; tut+=v[node][j].se.fi; if(v[node][j].se.fi==1)mask|=(1ll<<v[node][j].se.se); } vis[node]=1; } if(mpp[mask]==0)cevap+=tut; mpp[mask]=1; } main(void){ scanf("%lld %lld",&n,&m); for(int i=0;i<m;i++){ int x,y; scanf("%lld %lld",&x,&y); v[x].pb({y,{0,i}}); v[y].pb({x,{1,i}}); } //~ printf("%lld\n",cev); FOR vv.pb(i); FOR{ cev*=i; } while(say<=cev){ say++; //~ cout<<say<<" : : "<<cev<<endl; check(); next_permutation(vv.begin(),vv.end()); } printf("%lld\n",cevap); return 0; }

Compilation message (stderr)

amusementpark.cpp:56:10: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   56 | main(void){
      |          ^
amusementpark.cpp: In function 'int main()':
amusementpark.cpp:57:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   57 |  scanf("%lld %lld",&n,&m);
      |  ~~~~~^~~~~~~~~~~~~~~~~~~
amusementpark.cpp:60:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   60 |   scanf("%lld %lld",&x,&y);
      |   ~~~~~^~~~~~~~~~~~~~~~~~~
#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...