#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 time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |