2337. Déplacer les pièces pour obtenir une corde

DEV - 05/12
2337. Déplacer des pièces pour obtenir une corde Difficulté : moyenne Sujets : deux pointeurs, corde Vous recevez...

2337. Déplacer les pièces pour obtenir une corde

Difficulté : moyenne

Sujets :Deux pointeurs,Chaîne

On vous donne deux chaînescommenceretcible, tous deux de longueurn. Chaque chaîne est constituée uniquement des caractères'L','R', et'_'où:

  • Les personnages'L'et'R'représentent des pièces, où une pièce'L'peut se déplacer vers la gauche seulement s'il y a un espace vide directement à sa gauche et une pièce'R'ne peut se déplacer vers la droite que s'il y a un espace vide directement à sa droite.
  • Le personnage'_'représente un espace vide qui peut être occupé par n'importe lequel des'L'ou'R'pièces.

Retourvrais'il est possible d'obtenir la chaînecibleen déplaçant les morceaux de la ficellecommencerun certain nombre de fois. Sinon, retournezFAUX.

Exemple 1 :

  • Entrée : début = "LRR", cible = "L______RR"
  • Résultat : vrai
  • Explication : Nous pouvons obtenir la chaîne cible dès le début en effectuant les mouvements suivants :
    • Déplacez la première pièce d'un pas vers la gauche, le début devient égal à "L__RR".
    • Déplacez la dernière pièce d'un pas vers la droite, le début devient égal à "L_R_R".
    • Déplacez la deuxième pièce de trois pas vers la droite, le début devient égal à "L______RR".
    • Puisqu'il est possible d'obtenir la chaîne cible dès le début, nous renvoyons true.

Exemple 2 :

  • Entrée : start = "R_L_", cible = "__LR"
  • Résultat : faux
  • Explication : Le morceau 'R' au début de la chaîne peut se déplacer d'un pas vers la droite pour ...
    [Courte citation de 8% de l'article original]
Loading...