Submission #473306

#TimeUsernameProblemLanguageResultExecution timeMemory
473306ZaZo_Paths (BOI18_paths)C++14
23 / 100
3064 ms134428 KiB
#include <bits/stdc++.h> #define ZAZO ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); #define int long long using namespace std; int n , m , k; int cols[300001],vis[300001]; vector<int>edges[300001]; set<vector<int>>ans; void dfs(int node,set<int>path,vector<int>path2,int par) { if(path2.size()==0){ path2.push_back(node); path.insert(cols[node]); } for(int i = 0 ; i < edges[node].size() ; i++) { if(edges[node][i]!=par && !path.count(cols[edges[node][i]]) ){ path.insert(cols[edges[node][i]]); path2.push_back(edges[node][i]); ans.insert(path2); dfs(edges[node][i] , path , path2 , node); path2.erase(path2.begin()+(path2.size()-1)); path.erase(cols[edges[node][i]]); } } } int32_t main() { ZAZO cin >> n >> m >> k ; for(int i = 1 ; i <= n ; i++) { cin>>cols[i]; } for(int i = 0 ; i < m ; i++) { int u , v; cin >> u >> v; edges[u].push_back(v); edges[v].push_back(u); } for(int i = 1 ; i <= n ; i++) { dfs(i,{},{},-1); } cout<<ans.size()<<endl; }

Compilation message (stderr)

paths.cpp: In function 'void dfs(long long int, std::set<long long int>, std::vector<long long int>, long long int)':
paths.cpp:15:21: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   15 |   for(int i = 0 ; i < edges[node].size() ; 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...