Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

209
Visualizações
Asigne un PIN hacia y desde una matriz de cadenas

Estoy trabajando en un juego tipo búsqueda del tesoro/sala de escape, donde los jugadores tienen que resolver 4 acertijos del mundo real que les dan una palabra. Cuando hayan completado todos los acertijos, deben dirigirse a una pequeña aplicación web donde pueden ingresar las palabras que encontraron: la aplicación luego convierte estas palabras en un secreto final, en este caso, el código de 4 dígitos en un candado con un tesoro.

Ahora, sería fácil si la lista de palabras válidas fuera estática, pero es un sistema interactivo donde la salida de los rompecabezas cambia constantemente entre los jugadores. Estoy tratando de pensar en un algoritmo simple para que podamos codificar y decodificar PIN en y desde conjuntos de palabras, para que puedan cambiarse entre juegos, y solo las personas que configuran el código conocen el PIN y luego cambian las respuestas de cada juego. .

Estas son las restricciones:

  • la aplicación no necesita saber si un código es correcto o incorrecto. Solo tiene una función de codificación (aquí hay un código de candado, dame 4 palabras) y una función de decodificación (aquí hay 4 palabras, dame un código de candado coincidente). Entonces, los jugadores pueden ingresar cualquier palabra y recibir un código a cambio, pero no hay garantía de que sea el correcto.
  • idealmente, el orden de las palabras no importa (dado que la entrada "fiesta de la leyenda de la hierba verde" genera el mismo PIN que "leyenda de la fiesta de la hierba verde"), pero parece que podría complicar mucho las cosas, así que estoy feliz de hacerlo. por lo que los códigos deben ingresarse en un orden determinado
  • esto es para un juego, no hay necesidad de estar criptográficamente seguro aquí
  • Ya tengo una serie de palabras secretas, así que esencialmente solo necesito encontrar una serie de 4 números a partir de un número base que siempre saldrá igual.

Por ejemplo

 Encode: Input: 8370, output [“danger”, “writer”, “negative”, “origin”] Input: 8375, output [“crab”, “junior”, “spider”, “pillar”] Input: 2455, output [“party”, “fish”, “cookie”, “cactus”] Decode: Input: [“danger”, “writer”, “negative”, “origin”], output 8370 Input: [“writer”, “danger”, “negative”, “origin”], output 8370 Input: [“party”, “fish”, “cookie”, “cactus”], output 2455 Input [“pillar”, “crab”, “spider”, “junior”], output: 8375

No necesariamente estoy buscando una solución completa a este problema, pero realmente me gustaría tener indicaciones sobre dónde buscar: algoritmos, bibliotecas, trabajo existente. Las palabras clave para encontrar una aplicación que ya hace eso, o un algoritmo existente, no me llevaron a ninguna parte. Probé algunas opciones (recorriendo una serie de palabras agregando el PIN como índice), pero siempre me quedé atascado en cómo decodificarlo.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Dado que su código numérico está compuesto por cuatro dígitos, solo hay 10,000 posibilidades. Puede descargar un diccionario de inglés y generar aleatoriamente 10.000 combinaciones de cuatro palabras correspondientes a los 10.000 códigos numéricos posibles. A continuación, cree dos diccionarios de Python, uno que asigne un código numérico a una frase en inglés y el otro que asigne una frase en inglés a un código numérico. Tenga en cuenta que dado que la clave de un diccionario de Python tiene que ser de un tipo inmutable, no puede definir listas de palabras como claves. Tendrá que usar alguna otra estructura, como frozenset o una clase personalizada, pero esto es principalmente un tecnicismo. Si desea que el proceso de codificación-descodificación sea independiente del orden, esto no es un problema. Simplemente ordene lexicográficamente las cuatro palabras pasadas al método de decodificación y defina otro diccionario que mapee una frase en inglés dada en orden lexicográfico a la frase en inglés deseada (mismas palabras, orden potencialmente diferente).

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda