Maison >interface Web >js tutoriel >Magic Strings : problèmes en JavaScript

Magic Strings : problèmes en JavaScript

王林
王林avant
2023-09-08 12:17:051023parcourir

神奇的字符串:JavaScript 中的问题

Question

La chaîne magique str se compose uniquement de '1' et '2' et suit les règles suivantes -

La chaîne str est magique car elle concatène les caractères numériques '1' et '2' "Continu les occurrences génèrent la chaîne str elle-même.

Les premiers éléments de la chaîne str sont les suivants-

str = "1221121221221121122……"

Si nous regroupons les '1' et '2' consécutifs dans str, ce sera-

1 22 11 2 1 22 1 22 11 2 11 22 ......

Occurrences de '1' ou '2' dans chaque groupe Le degré est -

1 2 2 1 1 2 1 2 2 1 2 2 ......

Nous pouvons voir que la séquence d'occurrences ci-dessus est la chaîne elle-même.

Nous recevons un nombre entier en entrée et nous devons renvoyer le nombre de « 1 » dans le premier nombre de la chaîne. La corde magique str.

Par exemple, si l'entrée de la fonction est -

const num = 6;

alors la sortie devrait être -

const output = 3;

Description de la sortie :

Les 6 premiers éléments de la chaîne magique S sont "12211", qui contient trois 1, donc 3 est renvoyé.

Exemple

Le code est -

Démo en direct

const num = 6;
const magicalString = (num = 1) => {
   let ind = 12;
   let str = '1221121221221121122';
   while(str.length < num){
      const end = str.substring(str.length - 1) === &#39;2&#39; ? &#39;1&#39; : &#39;2&#39;;
      str = parseInt(str.substring(ind, ind + 1)) === 2 ? str + end + end : str + end;
      ind++;
   };
   return (str.substring(0, num).match(/1/g)||[]).length;
};
console.log(magicalString(num));

Sortie

La sortie dans la console sera -

3

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer