Menu
Coddy logo textTech

With Error Correction

Leçon 2 sur 3 du cours Défis de programmation pour l'entretien - Pack II de Coddy.

challenge icon

Défi

Moyen

On vous donne un signal sous la forme d'une chaîne de zéros et de uns.

En raison de bruits électromagnétiques, il arrive parfois (bien que rarement) que vous receviez un 0 au lieu d'un 1.

En supposant que chaque signal de 1 puisse comporter au plus un bit d'erreur (c'est-à-dire un 0 au lieu d'un 1), renvoyez la longueur de la plus longue séquence qui aurait pu vous être envoyée avec une seule erreur possible.

 

Exemple 1,

Entrée :

111100111011101110

Sortie attendue :

7

Parce que le 0 entre deux séquences de longueur 3 pourrait être une erreur, connectant les deux en une séquence de longueur 7.
 

Exemple 2 :

Entrée :

0011110010110

Sortie attendue :

5

Parce que l'un des 0 adjacents à la séquence de longueur 4 pourrait être une erreur, en faisant une séquence de longueur 5.

 

Essayez vous-même

#include <string.h>

int getLongestRepeatingOnes(char* s) {
    // Écrivez le code ici
}

Toutes les leçons de Défis de programmation pour l'entretien - Pack II