Submission #297876

#TimeUsernameProblemLanguageResultExecution timeMemory
297876juggernautSplit the Attractions (IOI19_split)C++14
11 / 100
146 ms12924 KiB
#include<bits/stdc++.h>
#include"split.h"
using namespace std;
vector<int>g[100005];
int ans[100005],b;
void dfs(int v){
    if(!b)return;
    b--;
    ans[v]=2;
    for(int to:g[v])if(!ans[to])dfs(to);
}
vector<int>find_split(int n,int a,int B,int c,vector<int>p1,vector<int>p2){
    b=B;
    for(int i=0;i<p1.size();i++){
        g[p1[i]].push_back(p2[i]);
        g[p2[i]].push_back(p1[i]);
    }
    dfs(0);
    vector<int>res;
    for(int i=0;i<n;i++){
        if(!ans[i]){
            if(a){
                a--;
                ans[i]=1;
            }else ans[i]=3;
        }
        res.push_back(ans[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:14:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   14 |     for(int i=0;i<p1.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...