Submission #292476

#TimeUsernameProblemLanguageResultExecution timeMemory
292476AutoratchSplit the Attractions (IOI19_split)C++14
18 / 100
141 ms14196 KiB
#include "split.h"
#include <bits/stdc++.h>
using namespace std;

const int N = 1e5;

int n,a,b,c;
vector<int> adj[N];
vector<int> sq;
bool visited[N];

void dfs(int u)
{
    if(visited[u]) return;
    visited[u] = true;
    sq.push_back(u);
    for(int v : adj[u]) dfs(v);
}

vector<int> find_split(int _n,int _a,int _b,int _c,vector<int> p,vector<int> q) 
{
    n = _n,a = _a,b = _b,c = _c;
    for(int i = 0;i < p.size();i++)
    {
        int a = p[i],b = q[i];
        adj[a].push_back(b),adj[b].push_back(a);
    }
    dfs(0);
	vector<int> res(n);
    for(int i = 0;i < b;i++) res[sq[i]] = 2;
    for(int i = b;i < a+b;i++) res[sq[i]] = 1;
    for(int i = a+b;i < n;i++) res[sq[i]] = 3;
    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:23:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   23 |     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...