Submission #143785

# Submission time Handle Problem Language Result Execution time Memory
143785 2019-08-15T05:18:06 Z jwvg0425 Split the Attractions (IOI19_split) C++17
11 / 100
130 ms 10156 KB
#include "split.h"
#include <stdio.h>
#include <vector>
#include <queue>
#include <algorithm>
#include <iostream>
#include <string>
#include <bitset>
#include <map>
#include <set>
#include <tuple>
#include <string.h>
#include <math.h>
#include <random>
#include <functional>
#include <assert.h>
#include <math.h>
#define all(x) (x).begin(), (x).end()
#define xx first
#define yy second

using namespace std;

using i64 = long long int;
using ii = pair<int, int>;
using ii64 = pair<i64, i64>;

vector<int> edge[100005];

vector<int> find_split(int n, int a, int b, int c, vector<int> p, vector<int> q) {
    for (int i = 0; i < p.size(); i++)
    {
        edge[p[i]].push_back(q[i]);
        edge[q[i]].push_back(p[i]);
    }

    vector<int> num(n, -1);

    queue<int> que;
    que.push(1);
    b--;
    num[1] = 2;

    while (!que.empty() && b > 0)
    {
        auto now = que.front();
        que.pop();

        for (auto& e : edge[now])
        {
            if (num[e] != -1)
                continue;

            if (b == 0)
                break;

            num[e] = 2;
            que.push(e);
            b--;
        }
    }

    for (int i = 0; i < n; i++)
    {
        if (num[i] == -1)
        {
            num[i] = 1;
            break;
        }
    }

    for (int i = 0; i < n; i++)
    {
        if (num[i] == -1)
            num[i] = 3;
    }

    return num;
}

Compilation message

split.cpp: In function 'std::vector<int> find_split(int, int, int, int, std::vector<int>, std::vector<int>)':
split.cpp:31:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for (int i = 0; i < p.size(); i++)
                     ~~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 4 ms 2680 KB ok, correct split
2 Correct 4 ms 2680 KB ok, correct split
3 Correct 4 ms 2680 KB ok, correct split
4 Incorrect 4 ms 2680 KB invalid split: #1=1, #2=1, #3=2
5 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 4 ms 2680 KB ok, correct split
2 Correct 4 ms 2680 KB ok, correct split
3 Correct 4 ms 2680 KB ok, correct split
4 Correct 102 ms 8952 KB ok, correct split
5 Correct 83 ms 7928 KB ok, correct split
6 Correct 75 ms 7800 KB ok, correct split
7 Correct 86 ms 7800 KB ok, correct split
8 Correct 130 ms 10156 KB ok, correct split
9 Correct 83 ms 7800 KB ok, correct split
10 Correct 64 ms 8392 KB ok, correct split
11 Correct 64 ms 8396 KB ok, correct split
12 Correct 67 ms 8432 KB ok, correct split
# Verdict Execution time Memory Grader output
1 Incorrect 4 ms 2680 KB invalid split: #1=1, #2=1, #3=3
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 4 ms 2680 KB invalid split: #1=1, #2=2, #3=6
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 4 ms 2680 KB ok, correct split
2 Correct 4 ms 2680 KB ok, correct split
3 Correct 4 ms 2680 KB ok, correct split
4 Incorrect 4 ms 2680 KB invalid split: #1=1, #2=1, #3=2
5 Halted 0 ms 0 KB -