Submission #1305780

#TimeUsernameProblemLanguageResultExecution timeMemory
1305780georgeckitoMigrations (IOI25_migrations)C++20
30 / 100
36 ms452 KiB
#include "migrations.h"
#include <bits/stdc++.h>
int d[100001];
int ans;
int ansN;
int l;
int send_message(int N, int i, int Pi)
{
  if (i == 1)
  {
    d[0] = 0;
    ans = 0;
    ansN = 0;
    l=0;
  }
  d[i] = d[Pi] + 1;
  if (d[i] > ans)
  {
    ans = d[i];
    ansN = i;
  }
  if(i < N-7) {
  	return 0;
	}
	if(d[i] == ans) return 4;
	
	if(i == N-7) l = ansN;
	int kk = l%4;
 	l = l/4;
 	return kk;
}

std::pair<int, int> longest_path(std::vector<int> S)
{
  int n = S.size();
  int aans = -1;
  for (int i = n-7; i < n; i++)
  {
    if (S[i] == 4)
    {
      aans = i;
    }
  }
  if(aans != -1) return {0, aans};
  aans = 0;
  int c = 1;
  for(int i = n-7; i < n; i++) {
  	aans += S[i]*c;
  	c = c * 4;
	}
	return {0, aans};
	
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...