Submission #1290697

#TimeUsernameProblemLanguageResultExecution timeMemory
1290697lucasdmySplit the Attractions (IOI19_split)C++20
7 / 100
46 ms16568 KiB
#include "split.h" #include <bits/stdc++.h> using namespace std; const int MAXN=1e5+10, MAXM=2e5+10; vector<int>v[MAXN], ord, marc(MAXN); void dfs(int x){ marc[x]=1; ord.push_back(x); for(int k=0;k<v[x].size();k++){ if(marc[v[x][k]]==0){ dfs(v[x][k]); } } } vector<int> find_split(int n, int a, int b, int c, vector<int>n1, vector<int>n2){ int m=n1.size(); vector<int>resp(n); for(int k=0;k<m;k++){ v[n1[k]].push_back(n2[k]); v[n2[k]].push_back(n1[k]); } dfs(0); for(int k=0;k<a;k++){ resp[ord[k]]=1; } for(int k=a;k<a+b;k++){ resp[ord[k]]=2; } for(int k=a+b;k<n;k++){ resp[ord[k]]=3; } return resp; } /*int main() { int n, m, a, b, c; cin>>n>>m>>a>>b>>c; vector<int>n1(m), n2(m); for(int k=0;k<m;k++){ cin>>n1[k]; } for(int k=0;k<m;k++){ cin>>n2[k]; } vector<int>resp=find_split(n, a, b, c, n1, n2); for(int k=0;k<n;k++){ cout<<resp[k]<<' '; } return 0; }*/
#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...