Submission #153151

#TimeUsernameProblemLanguageResultExecution timeMemory
153151SwanPaths (BOI18_paths)C++14
23 / 100
3050 ms8824 KiB
#include <bits/stdc++.h> #define stop system("pause") #define INP freopen("input.txt","r",stdin) #define OUTP freopen("solve1.txt","w",stdout) #define int long long using namespace std; typedef long long ll; vector<vector<int> > v; const int maxn = 4e5; int color[maxn]; bool c_used[maxn]; bool used[maxn]; bool is_good(int mask,int x){ return !(mask&(1<<x)); } int ans = 0 ; void dfs(int u,int mask){ if(mask)ans++; mask|=(1<<color[u]); for(int i(0); i < v[u].size();i++){ int to = v[u][i]; if(!is_good(mask,color[to]))continue; dfs(to,mask); } } main() { ios_base::sync_with_stdio(0); int n,m,k; cin >> n >> m >> k; v.resize(n+2); for(int i(0); i < n;i++)cin >> color[i]; for(int i(0); i < m;i++){ int a,b; cin >> a >> b; a--;b--; if(color[a] == color[b])continue; v[a].push_back(b); v[b].push_back(a); } for(int i(0); i < n;i++){ dfs(i,0); } cout << ans; return 0; } /* */

Compilation message (stderr)

paths.cpp: In function 'void dfs(long long int, long long int)':
paths.cpp:25:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int i(0); i < v[u].size();i++){
                   ~~^~~~~~~~~~~~~
paths.cpp: At global scope:
paths.cpp:32:6: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
 main()
      ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...