Submission #307789

# Submission time Handle Problem Language Result Execution time Memory
307789 2020-09-29T10:09:53 Z Vimmer Stations (IOI20_stations) C++14
5 / 100
1137 ms 5736 KB
#include <bits/stdc++.h>
#include "stations.h"
//#include <ext/pb_ds/assoc_container.hpp>
//#include <ext/pb_ds/tree_policy.hpp>

#define N 100005
#define PB push_back
#define sz(x) int(x.size())
#define F first
#define M ll(1e9 + 7)
#define S second
#define all(x) x.begin(), x.end()
#define endl '\n'

//#pragma GCC optimize("unroll-loops")
//#pragma GCC optimize("-O3")
//#pragma GCC optimize("Ofast")
//#pragma GCC optimize("fast-math")
//#pragma GCC optimize("no-stack-protector")

using namespace std;
//using namespace __gnu_pbds;

typedef long long ll;
//typedef tree <int, null_type, less_equal <int>, rb_tree_tag, tree_order_statistics_node_update> ordered_set;

ll mlt(ll x, ll y) {return (x * y) % M;}
ll sm(ll x, ll y) {return (x + y) % M;}


vector <int> g[N], a;

int id = 0;

void dfs(int v, int p)
{
    a[v] = id++;

    for (auto it : g[v])
    {
        if (it == p) continue;

        dfs(it, v);
    }
}

void rec(int v, int p)
{
    for (auto it : g[v])
    {
        if (it == p) continue;

        rec(it, v);
    }

    a[v] = id++;
}

vector<int> label(int n, int k, vector<int> u, vector<int> v)
{
    a.resize(n);

    id = 0;

    for (int i = 0; i < n - 1; i++)
    {
        g[u[i]].PB(v[i]);

        g[v[i]].PB(u[i]);
    }

    bool f = 1;

    for (int i = 0; i < n; i++) if (sz(g[i]) > 2) f = 0;

    if (f)
    {
        for (int i = 0; i < n; i++)
          if (sz(g[i]) == 1) {dfs(i, -1); break;}
    }
    else
        rec(0, -1);


    for (int i = 0; i < n; i++) g[i].clear();

	return a;
}

int find_next_station(int s, int t, vector<int> c)
{
    if (sz(c) == 1) return c[0];

    if (sz(c) == 2)
    {
        if (max(c[0], c[1]) < s)
        {
            if (t < max(c[0], c[1])) return min(c[0], c[1]);

            return max(c[0], c[1]);
        }

        if (s < t) return max(c[0], c[1]);

        return min(c[0], c[1]);
    }

    if (sz(c) == 3)
    {
        sort(all(c));

        if (s < t) return c[2];

        if (t < c[1]) return c[0];

        return c[1];
    }
}

//int main()
//{
//    iostream::sync_with_stdio(0); ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
//
//    //freopen("fcolor.in", "r", stdin); freopen("fcolor.out", "w", stdout);
//
//
//}

Compilation message

stations.cpp: In function 'int find_next_station(int, int, std::vector<int>)':
stations.cpp:118:1: warning: control reaches end of non-void function [-Wreturn-type]
  118 | }
      | ^
# Verdict Execution time Memory Grader output
1 Correct 556 ms 5628 KB Output is correct
2 Correct 455 ms 5664 KB Output is correct
3 Correct 981 ms 5504 KB Output is correct
4 Correct 756 ms 5732 KB Output is correct
5 Correct 690 ms 5584 KB Output is correct
6 Correct 439 ms 5736 KB Output is correct
7 Correct 435 ms 5624 KB Output is correct
8 Correct 7 ms 5504 KB Output is correct
9 Correct 8 ms 5504 KB Output is correct
10 Correct 4 ms 5504 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 534 ms 5376 KB Wrong query response.
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 648 ms 5728 KB Output is correct
2 Correct 590 ms 5736 KB Output is correct
3 Correct 988 ms 5588 KB Output is correct
4 Correct 735 ms 5376 KB Output is correct
5 Correct 701 ms 5632 KB Output is correct
6 Correct 476 ms 5732 KB Output is correct
7 Correct 482 ms 5624 KB Output is correct
8 Correct 5 ms 5588 KB Output is correct
9 Correct 7 ms 5376 KB Output is correct
10 Correct 4 ms 5504 KB Output is correct
11 Incorrect 689 ms 5504 KB Wrong query response.
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 886 ms 5504 KB Output is correct
2 Correct 680 ms 5588 KB Output is correct
3 Correct 647 ms 5592 KB Output is correct
4 Correct 6 ms 5504 KB Output is correct
5 Correct 9 ms 5376 KB Output is correct
6 Correct 4 ms 5504 KB Output is correct
7 Correct 652 ms 5632 KB Output is correct
8 Correct 1137 ms 5624 KB Output is correct
9 Correct 799 ms 5504 KB Output is correct
10 Correct 634 ms 5584 KB Output is correct
11 Incorrect 8 ms 5588 KB Wrong query response.
12 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 573 ms 5736 KB Output is correct
2 Correct 493 ms 5736 KB Output is correct
3 Correct 907 ms 5376 KB Output is correct
4 Correct 664 ms 5632 KB Output is correct
5 Correct 594 ms 5584 KB Output is correct
6 Correct 507 ms 5736 KB Output is correct
7 Correct 486 ms 5632 KB Output is correct
8 Correct 6 ms 5504 KB Output is correct
9 Correct 8 ms 5376 KB Output is correct
10 Correct 4 ms 5504 KB Output is correct
11 Incorrect 490 ms 5376 KB Wrong query response.
12 Halted 0 ms 0 KB -