제출 #428145

#제출 시각아이디문제언어결과실행 시간메모리
428145MOUF_MAHMALATSplit the Attractions (IOI19_split)C++14
0 / 100
96 ms11720 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]=1,id[0].first--; else if(id[1].first) ans[d]=2,id[1].first--; else ans[d]=3,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; }

컴파일 시 표준 에러 (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...