encontré esta pregunta de la entrevista, y no podía llegar a un algoritmo mejor que O (N^2 * P):Algoritmo entrevista rompecabezas
Dado un vector de números naturales P (1,2 , 3, ..., P) y otro vector de longitud N cuyos elementos son del primer vector, encuentre la subsecuencia más larga en el segundo vector, de modo que todos los elementos estén uniformemente distribuidos (tengan la misma frecuencia).
Ejemplo: (1,2,3) y (1, 2,1,3,2,1,3,1,2,3, 1). La subsecuencia más larga está en el intervalo [2,10], porque contiene todos los elementos de la primera secuencia con la misma frecuencia (1 aparece tres veces, 2 tres veces y 3 tres veces).
La complejidad del tiempo debe ser O (N * P).
¿La subsecuencia debe ser consecutiva? – svick
Sí, una subsecuencia V [i..j] está compuesta por los elementos: V [i], V [i + 1], ... V [j]. – flowerpower