JavaScript - Cómo resolver problema lógico con JavaScript

 
Vista:
sin imagen de perfil

Cómo resolver problema lógico con JavaScript

Publicado por Ignacio (2 intervenciones) el 17/11/2022 16:12:19
El problema es el siguiente:

Tengo que encontrar cuantas veces puedo formar la palabra 'BALLOON' en una serie de strings.

Por ejemplo:


-En el string
1
const S = 'BAONXXOLL';
puedo formar la palabra 'BALLOON' una vez, por lo que debería retornar 1.

-En el string
1
const S = 'BAOOLLNNOLOLGBAX';
puedo formar la palabra 'BALLOON' dos veces, por lo que debería retornar 2.

-En el string
1
const S = 'QAWABAWONL';
puedo formar la palabra 'BALLOON' cero veces, por lo que debería retornar 0.

Intenté utilizando el método match() con una expresión regular pero no funciono. El código de prueba es el siguiente:

1
2
3
let result = S.match(/(B.?A.?L.?L.?O.?O.?N)/g)?.length ?? 0;
 
    console.log(result, 'result')
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro
Val: 1.448
Plata
Ha mantenido su posición en JavaScript (en relación al último mes)
Gráfica de JavaScript

Cómo resolver problema lógico con JavaScript

Publicado por Alejandro (532 intervenciones) el 17/11/2022 17:34:16
  • Alejandro se encuentra ahora conectado en el
  • chat de PHP
Yo lo he hecho así, espero que lo entiendas:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
contadores = {B:0, A:0, L:0, O:0, N:0};
 
const S = 'BAOOLLNNOLOLGBAX';
 
mayor=0;
for( i=0, t=S.length; i<t; i++){
	if( contadores[S[i]]!=undefined ){
		contadores[S[i]]++;
		if(mayor<contadores[S[i]]){
			mayor=contadores[S[i]];
		}
	}
}
 
contadores.L = Math.floor(contadores.L/2);
contadores.O = Math.floor(contadores.O/2);
 
menor=mayor;
for(idx in contadores){
	if(menor>contadores[idx]){
		menor=contadores[idx];
	}
}
 
console.log(menor, 'result')
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Cómo resolver problema lógico con JavaScript

Publicado por Ignacio (2 intervenciones) el 17/11/2022 18:29:34
Funciona perfecto.. ahora me toca analizarla para comprenderla jaja. Gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar