Ir ao conteúdo
  • Cadastre-se

Sistema MIU


BrainStorm

Posts recomendados

Olá galera, eu tenho em mente um desafio lógico para conhecedores de qualquer linguagem de programação rápida com suporte a multithreading ( ou não :huh: ).

Estou lendo um livro, bastante conhecido por sinal: "Gödel, Escher e Bach - um entrelaçamento de gênios brilhantes", e um dos capítulos expõe e disserta a respeito de um Sistema formal, o Sistema MIU.

No livro, ao ser proposto a tentar o "jogo", peguei papel e caneta, memorizei as regras e... resolvi continuar a ler :lol:. Mas como eu nunca desisto de nada, pensei: "Vou tentar escrever um programa pra resolver isso e me responder o "teorema" MU ( explico adiante ), infelizmente, mesmo com meu cochecimento básico de C++ e de Delphi eu não consegui pensar em nenhum algoritmo inicialmente válido... pra quem tem um tempinho vou explicar o sistema MIU a seguir, deixando de lado os detalhes técnico/filosoficos que não são necessários a criação do almejado algoritmo:

O objetivo do jogo é produzir a sequencia de caracteres 'MU';

Inicialmente é dado a cadeia de caracteres 'MI' ao "jogador";

Deve-se "jogar" obedecendo rigorosamente as 4 leis a seguir:

1 - Se você possuir uma cadeia de caracteres cuja última letra é 'I', pode-se acrescentar um 'U' ao final.

2 - Suponhamos que
você
tenha 'M'x ( M seguindo de qualquer cadeia de caracteres ), Nesse caso você poderá acrescentar Mxx a sua coleção.

Ex: se tenho 'MI' posso obter em 'MII'

se tenho 'MIUIIU' posso obter 'MIUIIUIUIIU'

3 - Se 'III' ocorrer em qualquer parte de sua cadeia de caracteres, você poderá produzir uma nova sequência com 'U' ao invés de 'III' ( o contrário jamais é permitido )

4 - Se 'UU' ocorrer em qualquer parte de sua cadeia de caracteres, você poderá produzir uma nova sequência com 'U' ao invés de 'UU' ( o contrário é jamais é permitido )

Lembrando que aplicar ou não uma regra fica a criterio do "jogador", pode se ir aplicando uma regra so por exemplo, lembrando também q sempre começa-se com 'MI', pode ir aplicando a primeira, depois uma vez a segunda e tal... O que me remete a necessidade de uma algoritmo de IA.

Espero que programadores capazes de criar tal algoritmo se interessem pelo sistema formal que aqui apresentei, visto que o proximo capitulo do livro me informa que não há resposta ainda. :(

Estou me esforçando por aqui (* tenho tempo livre pra essas coisas ^^ ), vamos ao 'MU' !! ^_^

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...