With Double Error Correction
Lección 3 de 3 del curso Desafíos de programación para entrevistas - Pack II de Coddy.
Desafío
DifícilSe te da una señal como una cadena de ceros y unos.
Debido a un fuerte ruido electromagnético, a veces (no tan raramente) recibes 0 en lugar de 1.
Suponiendo que cada señal de 1s puede tener como máximo dos bits de error (es decir, dos 0s en lugar de 1s), devuelve la longitud de la secuencia más larga que posiblemente se te pudo haber enviado con solo dos errores.
Ejemplo 1,
Entrada:
111100111011101110
Salida esperada:
11
Porque ambos 0s entre las dos secuencias de longitud 3 podrían ser un error, conectando las tres en una secuencia de longitud 11.
Ejemplo 2:
Entrada:
0011110010110
Salida esperada:
7
Porque los dos 0s a la derecha de la secuencia de longitud 4 podrían ser un error, conectándola con el bit 1, convirtiéndolos en una secuencia de longitud 7.
Pruébalo tú mismo
#include <string.h>
int getLongestRepeatingOnes(char* s) {
// Escribe el código aquí
}