Maison  >  Article  >  interface Web  >  Trouver des fractions entre parenthèses en JavaScript

Trouver des fractions entre parenthèses en JavaScript

WBOY
WBOYavant
2023-09-01 18:17:081107parcourir

在 JavaScript 中查找括号分数

Question

Nous devons écrire une fonction JavaScript qui accepte une chaîne entre crochets équilibrés str comme premier et unique paramètre.

Notre fonction doit calculer et renvoyer le score d'une chaîne selon les règles suivantes -

  • [] a un score de 1

  • AB a un score de A + B, où A et B sont équilibrés cordes.
  • [A] a un score de 2 * A, où A est la chaîne de support équilibrée.

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

input

const str = '[][]';

output

const output = 2;

example

here est le code -

const findScore = (str = '') => {
   const arr = []
   for(const char of str) {
      arr.push(char)
      while(arr[arr.length - 1] === ']') {
         arr.pop()
         if(arr[arr.length - 1] === '[') {
            arr.pop() arr.push(1)
         } else {
            let num = arr.pop()
            while(arr[arr.length - 1] >= 1) {
               num += arr.pop()
            }
            arr.pop()
            arr.push(2 * num)
         }
      }      
   }
   return arr.reduce((acc, a) => acc + a, 0)
};
console.log(findScore(str));

output

2

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