Submission #791772

#TimeUsernameProblemLanguageResultExecution timeMemory
791772ezzzaySplit the Attractions (IOI19_split)C++14
18 / 100
87 ms66872 KiB
#include "split.h" #include <cstdio> #include <cassert> #include<bits/stdc++.h> using namespace std; const int N=2e6+5; vector<int>v[N]; bool vis[N]; vector<int>ans; void dfs(int a){ vis[a]=1; ans.push_back(a); for(auto b:v[a]){ if(vis[b]==0)dfs(b); } } vector<int> find_split(int n, int a, int b, int c, vector<int> p, vector<int> q) { vector<pair<int,int>>f; f.push_back({a,1});f.push_back({b,2});f.push_back({c,3}); sort(f.begin(),f.end()); for(int i=0;i<p.size();i++){ v[p[i]].push_back(q[i]); v[q[i]].push_back(p[i]); } vector<int> res; dfs(0); int arr[N]; while(a--){ arr[ans[ans.size()-1]]=1; ans.pop_back(); } while(b--){ arr[ans[ans.size()-1]]=2; ans.pop_back(); } while(c--){ arr[ans[ans.size()-1]]=3; ans.pop_back(); } for(int i=0;i<n;i++){ res.push_back(arr[i]); } return res; }

Compilation message (stderr)

split.cpp: In function 'std::vector<int> find_split(int, int, int, int, std::vector<int>, std::vector<int>)':
split.cpp:21:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   21 |     for(int i=0;i<p.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...
#Verdict Execution timeMemoryGrader output
Fetching results...