Submission #277800

#TimeUsernameProblemLanguageResultExecution timeMemory
277800AKaan37Amusement Park (CEOI19_amusementpark)C++17
19 / 100
3037 ms12160 KiB
//Bismillahirrahmanirrahim //█▀█─█──█──█▀█─█─█ //█▄█─█──█──█▄█─█▄█ //█─█─█▄─█▄─█─█─█─█ #include <bits/stdc++.h> using namespace std; typedef long long lo; typedef pair< lo,lo > PII; #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 = 500005; const lo mod = 1000000007; int n,m,b[li],a[li],k,flag,t,vis[li],x[li],y[li]; int cev; string s; vector<int> v[li]; inline void f(int sira,int mask){ if(sira==m){ FOR vis[i]=0; FOR v[i].clear(); int say=0; for(int i=0;i<m;i++){ if((mask&(1ll<<i))==0){vis[y[i]]++;v[x[i]].pb(y[i]);} else{vis[x[i]]++;v[y[i]].pb(x[i]);say++;} } queue<int> q; FOR{ if(vis[i]==0)q.push(i); } int cevv=0; while(q.size()){ int node=q.front(); q.pop(); cevv++; for(int i=0;i<(int)v[node].size();i++){ int go=v[node][i]; if(vis[go]==1)q.push(go); vis[go]--; } } if(cevv==n)cev+=say; return ; } f(sira+1,mask); f(sira+1,(mask|(1<<sira))); } main(void){ scanf("%lld %lld",&n,&m); for(int i=0;i<m;i++){ scanf("%lld %lld",&x[i],&y[i]); } f(0,0); printf("%lld\n",cev); return 0; }

Compilation message (stderr)

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