제출 #1284745

#제출 시각아이디문제언어결과실행 시간메모리
1284745Luvidi이주 (IOI25_migrations)C++20
30 / 100
28 ms484 KiB
#include "migrations.h" #include <bits/stdc++.h> using namespace std; const int maxn=1e4; int p[maxn],d[maxn],x,ms; int send_message(int n, int i, int pi) { p[i]=pi; d[i]=d[p[i]]+1; if(d[x]<d[i])x=i; if(i==n-9){ ms=x; // cout<<i<<' '<<ms<<'\n'; }else if(i==n-3){ ms=max(0,x-(n-9)); // cout<<i<<' '<<ms<<'\n'; }else if(i==n-1){ ms=max(0,x-(n-3)); // cout<<i<<' '<<ms<<'\n'; } if(i>=n-9){ int t=ms%5; ms/=5; return t; } return 0; } std::pair<int, int> longest_path(std::vector<int> a) { int n=a.size(); int d[]={0,0,0}; for(int i=n-4;i>=n-9;i--)d[0]=5*d[0]+a[i]; for(int i=n-2;i>=n-3;i--)d[1]=5*d[1]+a[i]; d[2]=a[n-1]; // for(int i:d)cout<<i<<' '; // cout<<'\n'; int ans=d[0]; if(d[1])ans=n-9+d[1]; if(d[2])ans=n-3+d[2]; return {0, ans}; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...