Submission #868479


Source Code Expand

#include <iostream>
#include <algorithm>
#include <vector>
#include <queue>
#include <cmath>
using namespace std;
#define rep(i,n) for(int i=0;i<(n);i++)

const int INF = 1e9;
const int MAX_N = 100010;
int n, k; //町の数 最大数 
vector<pair<int, int> > G[MAX_N];//グラフを表す隣接リスト fi:to se:cost
int d[MAX_N]; //sからの最短経路
typedef pair<int, int> P;//firstは最短距離,secondは頂点の番号

void dijkstra(void){
    priority_queue<P, vector<P>, greater<P> > que;//firstが小さい順に
    rep(i, n)d[i] = INF;//初期化
    d[0] = 0; que.push(P(0, 0));
    while(!que.empty()){
        auto p = que.top(); que.pop();
        int v = p.second;
        if(d[v] < p.first) continue;
        for(auto e : G[v]){//e.fi:隣接している頂点の番号 e.se:その頂点までのコスト
            if(d[e.first] > d[v] + e.second){//最短距離が更新されるとき
                d[e.first] = d[v] + e.second;
                que.push(make_pair(d[e.first], e.first));
            }
        }
    }
}

int a[100010];
int ans = 0;
int main(void){
    cin >> n >> k;
    rep(i, n){
        cin >> a[i]; a[i]--;
        if(i == 0 && a[i] != 0) ans++;
        if(i == 0)continue;
        G[a[i]].push_back(make_pair(i, 1)); G[i].push_back(make_pair(a[i], 1));
    }
    dijkstra();//0から他の町への最小値を出す
    vector<int> no;
    rep(i, n){
        if(d[i] > k){
            no.push_back(d[i] - k + 1);
        }
    }
    if(no.size()) ans++;
    bool flag;
    while(flag){
        rep(i, no.size()){
            if(no[i] > k){
                flag = true;
                no[i]--;
            }
        }
        if(flag) ans++;
    }
    printf("%d\n", ans);
    return 0;
}

Submission Info

Submission Time
Task D - Teleporter
User mmxsrup
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1801 Byte
Status TLE
Exec Time 1058 ms
Memory 8952 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 800
Status
TLE × 3
TLE × 58
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt, 1_22.txt, 1_23.txt, 1_24.txt, 1_25.txt, 1_26.txt, 1_27.txt, 1_28.txt, 1_29.txt, 1_30.txt, 1_31.txt, 1_32.txt, 1_33.txt, 1_34.txt, 1_35.txt, 1_36.txt, 1_37.txt, 1_38.txt, 1_39.txt, 1_40.txt, 1_41.txt, 1_42.txt, 1_43.txt, 1_44.txt, 1_45.txt, 1_46.txt, 1_47.txt, 1_48.txt, 1_49.txt, 1_50.txt, 1_51.txt, 1_52.txt, 1_53.txt, 1_54.txt
Case Name Status Exec Time Memory
0_00.txt TLE 1053 ms 2560 KB
0_01.txt TLE 1053 ms 2560 KB
0_02.txt TLE 1053 ms 2560 KB
1_00.txt TLE 1053 ms 2560 KB
1_01.txt TLE 1053 ms 2560 KB
1_02.txt TLE 1057 ms 7164 KB
1_03.txt TLE 1057 ms 7164 KB
1_04.txt TLE 1057 ms 7164 KB
1_05.txt TLE 1057 ms 7164 KB
1_06.txt TLE 1054 ms 6912 KB
1_07.txt TLE 1054 ms 6912 KB
1_08.txt TLE 1054 ms 6528 KB
1_09.txt TLE 1054 ms 6528 KB
1_10.txt TLE 1054 ms 7164 KB
1_11.txt TLE 1054 ms 7164 KB
1_12.txt TLE 1054 ms 7164 KB
1_13.txt TLE 1054 ms 7164 KB
1_14.txt TLE 1054 ms 7164 KB
1_15.txt TLE 1058 ms 7164 KB
1_16.txt TLE 1054 ms 7672 KB
1_17.txt TLE 1054 ms 7672 KB
1_18.txt TLE 1054 ms 7672 KB
1_19.txt TLE 1057 ms 8820 KB
1_20.txt TLE 1054 ms 8820 KB
1_21.txt TLE 1058 ms 8820 KB
1_22.txt TLE 1058 ms 8552 KB
1_23.txt TLE 1054 ms 8552 KB
1_24.txt TLE 1058 ms 8552 KB
1_25.txt TLE 1054 ms 7848 KB
1_26.txt TLE 1058 ms 7848 KB
1_27.txt TLE 1054 ms 7848 KB
1_28.txt TLE 1054 ms 8948 KB
1_29.txt TLE 1054 ms 8948 KB
1_30.txt TLE 1057 ms 8952 KB
1_31.txt TLE 1054 ms 7696 KB
1_32.txt TLE 1057 ms 7296 KB
1_33.txt TLE 1054 ms 7296 KB
1_34.txt TLE 1054 ms 7296 KB
1_35.txt TLE 1054 ms 7676 KB
1_36.txt TLE 1054 ms 7168 KB
1_37.txt TLE 1054 ms 7040 KB
1_38.txt TLE 1057 ms 7040 KB
1_39.txt TLE 1054 ms 7676 KB
1_40.txt TLE 1057 ms 7672 KB
1_41.txt TLE 1054 ms 7040 KB
1_42.txt TLE 1057 ms 7040 KB
1_43.txt TLE 1057 ms 7676 KB
1_44.txt TLE 1054 ms 7676 KB
1_45.txt TLE 1054 ms 7676 KB
1_46.txt TLE 1054 ms 7040 KB
1_47.txt TLE 1057 ms 7552 KB
1_48.txt TLE 1057 ms 7552 KB
1_49.txt TLE 1054 ms 7552 KB
1_50.txt TLE 1054 ms 6912 KB
1_51.txt TLE 1054 ms 7296 KB
1_52.txt TLE 1054 ms 7296 KB
1_53.txt TLE 1054 ms 7296 KB
1_54.txt TLE 1054 ms 6656 KB