Submission #428149

#TimeUsernameProblemLanguageResultExecution timeMemory
428149MOUF_MAHMALATSplit the Attractions (IOI19_split)C++14
18 / 100
131 ms11716 KiB
#include "split.h" #include<bits/stdc++.h> using namespace std; typedef int ll; bool b[100009]; ll cnt[100009]; vector<ll>ans; vector<vector<ll> >v; pair<ll,ll>id[3]; void dfs(ll d) { if(id[0].first) ans[d]=id[0].second,id[0].first--; else if(id[1].first) ans[d]=id[1].second,id[1].first--; else ans[d]=id[2].second,id[2].first--; b[d]=1; for(auto it:v[d]) if(b[it]==0) dfs(it); } vector<int> find_split(int n, int a, int b, int c, vector<int> p, vector<int> q) { v.resize(n); ans.resize(n); id[0]={a,1}; id[1]={b,2}; id[2]={c,3}; sort(id,id+3); for(ll i=0; i<p.size(); i++) { cnt[p[i]]++,cnt[q[i]]++; v[p[i]].push_back(q[i]); v[q[i]].push_back(p[i]); } v.resize(n); for(ll i=0; i<n; i++) { if(cnt[i]>1) continue; dfs(i); return ans; } dfs(0); return ans; }

Compilation message (stderr)

split.cpp: In function 'std::vector<int> find_split(int, int, int, int, std::vector<int>, std::vector<int>)':
split.cpp:31:18: warning: comparison of integer expressions of different signedness: 'll' {aka 'int'} and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   31 |     for(ll 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...