Submission #1840466


Source Code Expand

#include <cstdio>
#include <iostream>
#include <algorithm>

using namespace std;

const int N=100010;

int n,k,cnt,ans,t,G[N],dfn[N];
struct edge{
  int t,nx;
}E[N<<1];

inline void addedge(int x,int y){
  E[++cnt].t=y; E[cnt].nx=G[x]; G[x]=cnt;
  E[++cnt].t=x; E[cnt].nx=G[y]; G[y]=cnt;
}

int fa[N][20],dpt[N];

void dfs(int x,int f){
  dfn[x]=++t; fa[x][0]=f; dpt[x]=dpt[f]+1;
  for(int i=1;i<=18;i++) fa[x][i]=fa[fa[x][i-1]][i-1];
  for(int i=G[x];i;i=E[i].nx)
    if(E[i].t!=f) dfs(E[i].t,x);
}

int Q[N],tt;

inline bool cmp(const int &a,const int &b){
  return dfn[a]<dfn[b];
}

inline int lca(int x,int y){
  if(dpt[x]<dpt[y]) swap(x,y);
  for(int i=18;~i;i--)
    if(dpt[fa[x][i]]>=dpt[y]) x=fa[x][i];
  if(x==y) return x;
  for(int i=18;~i;i--)
    if(fa[x][i]!=fa[y][i]) x=fa[x][i],y=fa[y][i];
  return fa[x][0];
}

int main(){
  scanf("%d%d",&n,&k); ans=0;
  int x; scanf("%d",&x);
  if(x!=1) ans++;
  for(int i=2;i<=n;i++)
    scanf("%d",&x),addedge(x,i);
  dfs(1,0);
  for(int i=1;i<=n;i++)
    if(dpt[i]-1>k) Q[++tt]=i;
  if(!tt) return printf("%d\n",ans),0;
  sort(Q+1,Q+1+tt,cmp); int lst=Q[1]; ans++;
  for(int i=2;i<=tt;i++){
    if(dpt[Q[i]]-dpt[lca(lst,Q[i])]+1>k) ans++,lst=Q[i];
  }
  printf("%d\n",ans);
  return 0;
}

Submission Info

Submission Time
Task D - Teleporter
User SBP
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1302 Byte
Status WA
Exec Time 56 ms
Memory 14336 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:45:22: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d%d",&n,&k); ans=0;
                      ^
./Main.cpp:46:24: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   int x; scanf("%d",&x);
                        ^
./Main.cpp:49:32: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d",&x),addedge(x,i);
                                ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 800
Status
AC × 3
AC × 44
WA × 14
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 AC 2 ms 2304 KB
0_01.txt AC 2 ms 2304 KB
0_02.txt AC 2 ms 2304 KB
1_00.txt AC 2 ms 2304 KB
1_01.txt AC 2 ms 2304 KB
1_02.txt AC 55 ms 14336 KB
1_03.txt AC 54 ms 14336 KB
1_04.txt AC 55 ms 14336 KB
1_05.txt AC 55 ms 14336 KB
1_06.txt AC 44 ms 14080 KB
1_07.txt AC 44 ms 14080 KB
1_08.txt AC 27 ms 13952 KB
1_09.txt AC 27 ms 13952 KB
1_10.txt AC 52 ms 12800 KB
1_11.txt AC 52 ms 12800 KB
1_12.txt AC 52 ms 12800 KB
1_13.txt AC 43 ms 11136 KB
1_14.txt AC 42 ms 11136 KB
1_15.txt AC 42 ms 11136 KB
1_16.txt AC 31 ms 11008 KB
1_17.txt AC 19 ms 10752 KB
1_18.txt AC 19 ms 10752 KB
1_19.txt AC 16 ms 10752 KB
1_20.txt AC 16 ms 10752 KB
1_21.txt AC 16 ms 10752 KB
1_22.txt AC 44 ms 11136 KB
1_23.txt WA 44 ms 11136 KB
1_24.txt WA 44 ms 11136 KB
1_25.txt AC 44 ms 11136 KB
1_26.txt WA 44 ms 11136 KB
1_27.txt WA 45 ms 11136 KB
1_28.txt AC 43 ms 11136 KB
1_29.txt AC 22 ms 10880 KB
1_30.txt AC 19 ms 10752 KB
1_31.txt WA 45 ms 11136 KB
1_32.txt AC 21 ms 10752 KB
1_33.txt AC 21 ms 10752 KB
1_34.txt AC 21 ms 10752 KB
1_35.txt WA 45 ms 11136 KB
1_36.txt AC 21 ms 10752 KB
1_37.txt AC 21 ms 10752 KB
1_38.txt AC 21 ms 10752 KB
1_39.txt WA 45 ms 11264 KB
1_40.txt WA 47 ms 11136 KB
1_41.txt AC 21 ms 10880 KB
1_42.txt AC 21 ms 10880 KB
1_43.txt WA 46 ms 11392 KB
1_44.txt WA 48 ms 11392 KB
1_45.txt AC 41 ms 11264 KB
1_46.txt AC 22 ms 11008 KB
1_47.txt WA 49 ms 12032 KB
1_48.txt WA 50 ms 12032 KB
1_49.txt AC 44 ms 11904 KB
1_50.txt AC 24 ms 11648 KB
1_51.txt WA 55 ms 13824 KB
1_52.txt WA 54 ms 13824 KB
1_53.txt AC 56 ms 13824 KB
1_54.txt AC 27 ms 13440 KB