답안 #373638

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
373638 2021-03-05T10:42:51 Z Jarif_Rahman 기지국 (IOI20_stations) C++17
10 / 100
866 ms 1012 KB
#include "stations.h"
#include <bits/stdc++.h>
#define pb push_back
#define f first
#define sc second
using namespace std;
typedef long long int ll;
typedef string str;
vector<vector<int>> v;
vector<int> lb, sz;
pair<int, int> div(int x){
    return make_pair(x/1000, x%1000);
}
int in = 0;
void dfs(int nd, int ss){
    lb[nd] = 1000*in;
    in++;
    for(int x: v[nd]) if(x!=ss) dfs(x, nd);
    for(int x: v[nd]) if(x!=ss) sz[nd]+=sz[x];
    lb[nd]+=sz[nd];
}
vector<int> label(int n, int k, vector<int> aa, vector<int> bb){
    in = 0;
    v.assign(n, {});
    lb.assign(n, -1);
    sz.assign(n, 1);
    for(int i = 0; i < n-1; i++){
        v[aa[i]].pb(bb[i]);
        v[bb[i]].pb(aa[i]);
    }
    dfs(0, -1);
    return lb;
}
int find_next_station(int s, int t, vector<int> c){
    auto [a, b] = div(s);
    auto [x, y] = div(t);
    if(x < a || x > a+b-1){
        for(int xx: c){
            auto [aa, bb] = div(xx);
            if(aa < a) return xx;
        }
    }
    for(int xx: c){
        auto [aa, bb] = div(xx);
        if(a >= aa && a <= aa+bb-1) continue;
        if(x >= aa && x <= aa+bb-1) return xx;
    }
    exit('Joy Bangla');
}

Compilation message

stations.cpp:48:10: warning: character constant too long for its type
   48 |     exit('Joy Bangla');
      |          ^~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 492 KB Invalid labels (values out of range). scenario=0, k=1000, vertex=1, label=6004
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 5 ms 492 KB Invalid labels (values out of range). scenario=0, k=1000, vertex=1, label=1511
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 20 ms 1012 KB Execution failed because the return code was nonzero
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 857 ms 868 KB Output is correct
2 Correct 655 ms 756 KB Output is correct
3 Correct 619 ms 868 KB Output is correct
4 Correct 3 ms 736 KB Output is correct
5 Correct 5 ms 756 KB Output is correct
6 Correct 1 ms 756 KB Output is correct
7 Correct 579 ms 884 KB Output is correct
8 Correct 866 ms 1012 KB Output is correct
9 Correct 647 ms 868 KB Output is correct
10 Correct 569 ms 868 KB Output is correct
11 Correct 5 ms 736 KB Output is correct
12 Correct 5 ms 736 KB Output is correct
13 Correct 5 ms 864 KB Output is correct
14 Correct 4 ms 868 KB Output is correct
15 Correct 2 ms 776 KB Output is correct
16 Correct 489 ms 736 KB Output is correct
17 Correct 512 ms 876 KB Output is correct
18 Correct 486 ms 876 KB Output is correct
19 Correct 495 ms 756 KB Output is correct
20 Correct 508 ms 868 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Runtime error 72 ms 936 KB Execution failed because the return code was nonzero
2 Halted 0 ms 0 KB -