Re: [obm-l] Jogo dos 4 bits

2008-11-22 Por tôpico Douglas Ribeiro Silva
Olá pessoal! Desculpem a minha ausencia esses dias da lista pra
responder às duvidas dos que responderam o meu e-mail inicial.

Ótima estratégia Ralph! Gostei bastente mesmo do seu método! Mas como
você mesmo levantou a hipótese, será que da pra fazer com menos
tentativas?

Acho que não... pelos motivos citados pelo Maurício

Acho que chegamos então que o mínimo são 5 tentativas.. Obrigado a todos!


2008/11/18 Ralph Teixeira [EMAIL PROTECTED]:
 Se o objetivo eh minimizar o numero **maximo** de palpites... Certamente, eh
 possivel adivinhar em um maximo de 5 palpites, usando a seguinte estrategia
 de ir trocando um digito de cada vez (Pi=i-esimo palpite, Ri=i-esima
 resposta):

 P1=
 P2=0001
 P3=0011
 P4=0111

 Se a resposta melhorou ao passar de Pi para Pi+1, eh porque aquele digito
 que voce trocou estah correto, e vice-versa. Ou seja, apos estes 4 palpites,
 voce jah sabe os ultimos 3 digitos com certeza.
 Agora basta olhar a resposta a P1 para descobrir se o digito incerto eh 0 ou
 1; assim, o 5o palpite serah correto.

 Exemplo:
 R1=1, R2=2, R3=1 e R4=2.
 Como R2R1, o ultimo digito eh 1, isto eh, xxx1 (pois esta eh a unica
 diferenca entre P1 e P2);
 Como R3R2, xx01.
 Como R4R3, x101.
 Enfim, como R1=1, soh tem um 0 na resposta, entao 1101 eh a resposta.

 Esta estrategia eh facilmente generalizavel: sempre eh possivel adivinhar um
 numero de n bits com, no maximo, n+1 palpites (agora, serah que dah com
 menos?).

 Abraco,
   Ralph

 2008/11/18 Douglas Ribeiro Silva [EMAIL PROTECTED]

 O jogo dos 4 bits consiste no computador escolher um número de 4 bits
 e o usuário tentar adivinhar. Para cada palpite do usuário o
 computador retorna quantos bits ele acertou.

 Ex: o computador escolhe 0101

 Usuario: 
 PC:2
 Usuario: 0100
 PC: 3
 Usuario: 
 PC: 2
 Usuario: 0111
 PC: 1
 Usuario: 0101
 PC: 4

 Qual a melhor estratégia para o jogo? O jogador deve sempre trocar a
 quantidade de dígitos que o computador indicar? Qual a quantidade
 máxima que um usuário inteligente gastaria para acertar o numero?

 =
 Instruções para entrar na lista, sair da lista e usar a lista em
 http://www.mat.puc-rio.br/~obmlistas/obm-l.html
 =



=
Instruções para entrar na lista, sair da lista e usar a lista em
http://www.mat.puc-rio.br/~obmlistas/obm-l.html
=


Re: [obm-l] Jogo dos 4 bits

2008-11-18 Por tôpico Fellipe Rossi
nao ficou muito claro. O PC retorna so os bits que estão nas posições
corretas né?

2008/11/18 Douglas Ribeiro Silva [EMAIL PROTECTED]

 O jogo dos 4 bits consiste no computador escolher um número de 4 bits
 e o usuário tentar adivinhar. Para cada palpite do usuário o
 computador retorna quantos bits ele acertou.

 Ex: o computador escolhe 0101

 Usuario: 
 PC:2
 Usuario: 0100
 PC: 3
 Usuario: 
 PC: 2
 Usuario: 0111
 PC: 1
 Usuario: 0101
 PC: 4

 Qual a melhor estratégia para o jogo? O jogador deve sempre trocar a
 quantidade de dígitos que o computador indicar? Qual a quantidade
 máxima que um usuário inteligente gastaria para acertar o numero?

 =
 Instruções para entrar na lista, sair da lista e usar a lista em
 http://www.mat.puc-rio.br/~obmlistas/obm-l.html
 =



Re: [obm-l] Jogo dos 4 bits

2008-11-18 Por tôpico Felipe
por entropia deveria ser -log_2 ^(1/(2^4))=log_2^(2^4)=4 bits
certo?

1a-q tal poe sem perda de generalidade 
descobre que sao 2 zeros e 2 uns (2 acertos)
2a-depois poe 0111 (3 acertos)
3a- 0001
4a-

ah fiz rapido , alguem deve achar uma maneira de no máximo 4.



2008/11/18 Douglas Ribeiro Silva [EMAIL PROTECTED]

 O jogo dos 4 bits consiste no computador escolher um número de 4 bits
 e o usuário tentar adivinhar. Para cada palpite do usuário o
 computador retorna quantos bits ele acertou.

 Ex: o computador escolhe 0101

 Usuario: 
 PC:2
 Usuario: 0100
 PC: 3
 Usuario: 
 PC: 2
 Usuario: 0111
 PC: 1
 Usuario: 0101
 PC: 4

 Qual a melhor estratégia para o jogo? O jogador deve sempre trocar a
 quantidade de dígitos que o computador indicar? Qual a quantidade
 máxima que um usuário inteligente gastaria para acertar o numero?

 =
 Instruções para entrar na lista, sair da lista e usar a lista em
 http://www.mat.puc-rio.br/~obmlistas/obm-l.htmlhttp://www.mat.puc-rio.br/%7Eobmlistas/obm-l.html
 =



Re: [obm-l] Jogo dos 4 bits

2008-11-18 Por tôpico Felipe
por entropia deveria ser -log_2 ^(1/(2^4))=log_2^(2^4)=4 bits
certo?

1a-q tal poe sem perda de generalidade 
descobre que sao 2 zeros e 2 uns (2 acertos)
2a-depois poe 0111 (3 acertos)
3a- 0001
4a-

ah fiz rapido , alguem deve achar uma maneira de no máximo 4.



2008/11/18 Douglas Ribeiro Silva [EMAIL PROTECTED]

 O jogo dos 4 bits consiste no computador escolher um número de 4 bits
 e o usuário tentar adivinhar. Para cada palpite do usuário o
 computador retorna quantos bits ele acertou.

 Ex: o computador escolhe 0101

 Usuario: 
 PC:2
 Usuario: 0100
 PC: 3
 Usuario: 
 PC: 2
 Usuario: 0111
 PC: 1
 Usuario: 0101
 PC: 4

 Qual a melhor estratégia para o jogo? O jogador deve sempre trocar a
 quantidade de dígitos que o computador indicar? Qual a quantidade
 máxima que um usuário inteligente gastaria para acertar o numero?

 =
 Instruções para entrar na lista, sair da lista e usar a lista em
 http://www.mat.puc-rio.br/~obmlistas/obm-l.htmlhttp://www.mat.puc-rio.br/%7Eobmlistas/obm-l.html
 =



Re: [obm-l] Jogo dos 4 bits

2008-11-18 Por tôpico Maurício Collares
Não existe maneira de fazer só com 4 tentativas. Suponha que o
computador pode prever o que você vai falar (isso não é nada irreal,
pois se o computador escolhe os bits aleatoriamente e uniformemente, a
chance de ele escolher o correspondente a adivinhar é não nula).
Você tenta 0001 e o computador, só de maldade, responde 1. Você
não sabe qual dos 4 dígitos está errado, mas o fato é que você só tem
mais três tentativas pra acertar segundo sua conjectura:

* Se você tentar mudar apenas um dígito por tentativa (em relação a
combinação original), o computador adivinha qual dígito você não
tentou e escolhe ele como o errado, de modo que você só vai poder
acertar de quinta.
* Se você mudar mais de um dígito em uma das três tentativas que
sobrou e, por consequencia disso, conseguir mudar todos os dígitos (se
não mudar todos, faz a mesma coisa que no caso anterior), você vai ter
dois dígitos que sempre são mudados juntos em relação a configuração
original. Então o computador adivinha qual par sempre é testado
conjuntamente e escolhe um elemento do par como errado. Então, em
todas as tentativas, ou você não muda o dígito errado, ou muda o
dígito errado pra um dígito certo e muda um dígito certo pra um dígito
errado.

Segue-se que, no pior caso, 4 lances não bastam. É fácil fazer com 6
lances (basta tentar uma configuração inicial qualquer e mudar os bits
um por um para conseguir informação sobre eles: em cinco lances, vc
tem toda a informação necessária, e aí dá pra acertar no sexto), mas
não pensei como fazer pra provar que dá (ou que não dá) pra fazer com
cinco.

--
Abraços,
Maurício

2008/11/18 Felipe [EMAIL PROTECTED]:
 por entropia deveria ser -log_2 ^(1/(2^4))=log_2^(2^4)=4 bits
 certo?

 1a-q tal poe sem perda de generalidade 
 descobre que sao 2 zeros e 2 uns (2 acertos)
 2a-depois poe 0111 (3 acertos)
 3a- 0001
 4a-

 ah fiz rapido , alguem deve achar uma maneira de no máximo 4.



 2008/11/18 Douglas Ribeiro Silva [EMAIL PROTECTED]

 O jogo dos 4 bits consiste no computador escolher um número de 4 bits
 e o usuário tentar adivinhar. Para cada palpite do usuário o
 computador retorna quantos bits ele acertou.

 Ex: o computador escolhe 0101

 Usuario: 
 PC:2
 Usuario: 0100
 PC: 3
 Usuario: 
 PC: 2
 Usuario: 0111
 PC: 1
 Usuario: 0101
 PC: 4

 Qual a melhor estratégia para o jogo? O jogador deve sempre trocar a
 quantidade de dígitos que o computador indicar? Qual a quantidade
 máxima que um usuário inteligente gastaria para acertar o numero?

 =
 Instruções para entrar na lista, sair da lista e usar a lista em
 http://www.mat.puc-rio.br/~obmlistas/obm-l.html
 =



=
Instruções para entrar na lista, sair da lista e usar a lista em
http://www.mat.puc-rio.br/~obmlistas/obm-l.html
=


Re: [obm-l] Jogo dos 4 bits

2008-11-18 Por tôpico Felipe
é entao, fiquei na duvida se podia usar entropia aí, pq eh um pouco
diferente, mas com 6 eh tranquilo acertar
 problema eh provar mesmo quantos sao ehhe

2008/11/18 Maurício Collares [EMAIL PROTECTED]

 Não existe maneira de fazer só com 4 tentativas. Suponha que o
 computador pode prever o que você vai falar (isso não é nada irreal,
 pois se o computador escolhe os bits aleatoriamente e uniformemente, a
 chance de ele escolher o correspondente a adivinhar é não nula).
 Você tenta 0001 e o computador, só de maldade, responde 1. Você
 não sabe qual dos 4 dígitos está errado, mas o fato é que você só tem
 mais três tentativas pra acertar segundo sua conjectura:

 * Se você tentar mudar apenas um dígito por tentativa (em relação a
 combinação original), o computador adivinha qual dígito você não
 tentou e escolhe ele como o errado, de modo que você só vai poder
 acertar de quinta.
 * Se você mudar mais de um dígito em uma das três tentativas que
 sobrou e, por consequencia disso, conseguir mudar todos os dígitos (se
 não mudar todos, faz a mesma coisa que no caso anterior), você vai ter
 dois dígitos que sempre são mudados juntos em relação a configuração
 original. Então o computador adivinha qual par sempre é testado
 conjuntamente e escolhe um elemento do par como errado. Então, em
 todas as tentativas, ou você não muda o dígito errado, ou muda o
 dígito errado pra um dígito certo e muda um dígito certo pra um dígito
 errado.

 Segue-se que, no pior caso, 4 lances não bastam. É fácil fazer com 6
 lances (basta tentar uma configuração inicial qualquer e mudar os bits
 um por um para conseguir informação sobre eles: em cinco lances, vc
 tem toda a informação necessária, e aí dá pra acertar no sexto), mas
 não pensei como fazer pra provar que dá (ou que não dá) pra fazer com
 cinco.

 --
 Abraços,
 Maurício

 2008/11/18 Felipe [EMAIL PROTECTED]:
  por entropia deveria ser -log_2 ^(1/(2^4))=log_2^(2^4)=4 bits
  certo?
 
  1a-q tal poe sem perda de generalidade 
  descobre que sao 2 zeros e 2 uns (2 acertos)
  2a-depois poe 0111 (3 acertos)
  3a- 0001
  4a-
 
  ah fiz rapido , alguem deve achar uma maneira de no máximo 4.
 
 
 
  2008/11/18 Douglas Ribeiro Silva [EMAIL PROTECTED]
 
  O jogo dos 4 bits consiste no computador escolher um número de 4 bits
  e o usuário tentar adivinhar. Para cada palpite do usuário o
  computador retorna quantos bits ele acertou.
 
  Ex: o computador escolhe 0101
 
  Usuario: 
  PC:2
  Usuario: 0100
  PC: 3
  Usuario: 
  PC: 2
  Usuario: 0111
  PC: 1
  Usuario: 0101
  PC: 4
 
  Qual a melhor estratégia para o jogo? O jogador deve sempre trocar a
  quantidade de dígitos que o computador indicar? Qual a quantidade
  máxima que um usuário inteligente gastaria para acertar o numero?
 
 
 =
  Instruções para entrar na lista, sair da lista e usar a lista em
  http://www.mat.puc-rio.br/~obmlistas/obm-l.htmlhttp://www.mat.puc-rio.br/%7Eobmlistas/obm-l.html
 
 =
 
 

 =
 Instruções para entrar na lista, sair da lista e usar a lista em
 http://www.mat.puc-rio.br/~obmlistas/obm-l.htmlhttp://www.mat.puc-rio.br/%7Eobmlistas/obm-l.html
 =



Re: [obm-l] Jogo dos 4 bits

2008-11-18 Por tôpico Fellipe Rossi
Ainda pergunto: o computador retorna quantos bits estão certos ou quantos
bits estão certos nas posicoes certas?
Por exemplo. Se o computador escolhe 0001

Eu chuto 1000

Ele me retorna 4 (3 zeros e 1 um) ou 2 (apenas 2 zeros na posicao correta)?

Isso faz toda a diferença e não ficou claro no enunciado.

2008/11/18 Maurício Collares [EMAIL PROTECTED]

 Não existe maneira de fazer só com 4 tentativas. Suponha que o
 computador pode prever o que você vai falar (isso não é nada irreal,
 pois se o computador escolhe os bits aleatoriamente e uniformemente, a
 chance de ele escolher o correspondente a adivinhar é não nula).
 Você tenta 0001 e o computador, só de maldade, responde 1. Você
 não sabe qual dos 4 dígitos está errado, mas o fato é que você só tem
 mais três tentativas pra acertar segundo sua conjectura:

 * Se você tentar mudar apenas um dígito por tentativa (em relação a
 combinação original), o computador adivinha qual dígito você não
 tentou e escolhe ele como o errado, de modo que você só vai poder
 acertar de quinta.
 * Se você mudar mais de um dígito em uma das três tentativas que
 sobrou e, por consequencia disso, conseguir mudar todos os dígitos (se
 não mudar todos, faz a mesma coisa que no caso anterior), você vai ter
 dois dígitos que sempre são mudados juntos em relação a configuração
 original. Então o computador adivinha qual par sempre é testado
 conjuntamente e escolhe um elemento do par como errado. Então, em
 todas as tentativas, ou você não muda o dígito errado, ou muda o
 dígito errado pra um dígito certo e muda um dígito certo pra um dígito
 errado.

 Segue-se que, no pior caso, 4 lances não bastam. É fácil fazer com 6
 lances (basta tentar uma configuração inicial qualquer e mudar os bits
 um por um para conseguir informação sobre eles: em cinco lances, vc
 tem toda a informação necessária, e aí dá pra acertar no sexto), mas
 não pensei como fazer pra provar que dá (ou que não dá) pra fazer com
 cinco.

 --
 Abraços,
 Maurício

 2008/11/18 Felipe [EMAIL PROTECTED]:
  por entropia deveria ser -log_2 ^(1/(2^4))=log_2^(2^4)=4 bits
  certo?
 
  1a-q tal poe sem perda de generalidade 
  descobre que sao 2 zeros e 2 uns (2 acertos)
  2a-depois poe 0111 (3 acertos)
  3a- 0001
  4a-
 
  ah fiz rapido , alguem deve achar uma maneira de no máximo 4.
 
 
 
  2008/11/18 Douglas Ribeiro Silva [EMAIL PROTECTED]
 
  O jogo dos 4 bits consiste no computador escolher um número de 4 bits
  e o usuário tentar adivinhar. Para cada palpite do usuário o
  computador retorna quantos bits ele acertou.
 
  Ex: o computador escolhe 0101
 
  Usuario: 
  PC:2
  Usuario: 0100
  PC: 3
  Usuario: 
  PC: 2
  Usuario: 0111
  PC: 1
  Usuario: 0101
  PC: 4
 
  Qual a melhor estratégia para o jogo? O jogador deve sempre trocar a
  quantidade de dígitos que o computador indicar? Qual a quantidade
  máxima que um usuário inteligente gastaria para acertar o numero?
 
 
 =
  Instruções para entrar na lista, sair da lista e usar a lista em
  http://www.mat.puc-rio.br/~obmlistas/obm-l.html
 
 =
 
 

 =
 Instruções para entrar na lista, sair da lista e usar a lista em
 http://www.mat.puc-rio.br/~obmlistas/obm-l.html
 =



Re: [obm-l] Jogo dos 4 bits

2008-11-18 Por tôpico Fellipe Rossi
Com no máximo cinco:
1a - Usuário: 

-  Se der 0 ou 4, a resposta é imediata. FIM na 1a (se der 4) ou 2a (se der
0)

-  Se der 1 ou 3, basta variar o bit nas 4 posições (no máximo) totalizando
4 tentativas na pior das hipóteses. FIM no máximo na 5a etapa

-  Se der 2:
2a - Usuário insere dois 0 e dois 1.

- Se der 0 ou 4, a resposta é imediata. FIM na 2a (se der 4) ou 3a. (se der
0)

- Senão, a resposta só pode ser 2. Então:
3a. Usuário escolhe um par 01 e inverte.

- Se der 0 ou 4, a resposta é imediata. FIM na 3a. (se der 4) ou 4a. (se der
0)

- Se der 2 novamente, significa que tanto no par que foi mexido quanto no
par que não foi mexido havia 1 bit na posição correta:

4a. Inverte o 0 do primeiro par com o 1 do segundo par
- Vai dar 0 ou 4, a resposta é imediata. FIM na 4a.(se der 4) ou 5a (se der
0)

Agora resta saber se dá com 4 hehe

2008/11/18 Felipe [EMAIL PROTECTED]

 é entao, fiquei na duvida se podia usar entropia aí, pq eh um pouco
 diferente, mas com 6 eh tranquilo acertar
  problema eh provar mesmo quantos sao ehhe

 2008/11/18 Maurício Collares [EMAIL PROTECTED]

 Não existe maneira de fazer só com 4 tentativas. Suponha que o
 computador pode prever o que você vai falar (isso não é nada irreal,
 pois se o computador escolhe os bits aleatoriamente e uniformemente, a
 chance de ele escolher o correspondente a adivinhar é não nula).
 Você tenta 0001 e o computador, só de maldade, responde 1. Você
 não sabe qual dos 4 dígitos está errado, mas o fato é que você só tem
 mais três tentativas pra acertar segundo sua conjectura:

 * Se você tentar mudar apenas um dígito por tentativa (em relação a
 combinação original), o computador adivinha qual dígito você não
 tentou e escolhe ele como o errado, de modo que você só vai poder
 acertar de quinta.
 * Se você mudar mais de um dígito em uma das três tentativas que
 sobrou e, por consequencia disso, conseguir mudar todos os dígitos (se
 não mudar todos, faz a mesma coisa que no caso anterior), você vai ter
 dois dígitos que sempre são mudados juntos em relação a configuração
 original. Então o computador adivinha qual par sempre é testado
 conjuntamente e escolhe um elemento do par como errado. Então, em
 todas as tentativas, ou você não muda o dígito errado, ou muda o
 dígito errado pra um dígito certo e muda um dígito certo pra um dígito
 errado.

 Segue-se que, no pior caso, 4 lances não bastam. É fácil fazer com 6
 lances (basta tentar uma configuração inicial qualquer e mudar os bits
 um por um para conseguir informação sobre eles: em cinco lances, vc
 tem toda a informação necessária, e aí dá pra acertar no sexto), mas
 não pensei como fazer pra provar que dá (ou que não dá) pra fazer com
 cinco.

 --
 Abraços,
 Maurício

 2008/11/18 Felipe [EMAIL PROTECTED]:
  por entropia deveria ser -log_2 ^(1/(2^4))=log_2^(2^4)=4 bits
  certo?
 
  1a-q tal poe sem perda de generalidade 
  descobre que sao 2 zeros e 2 uns (2 acertos)
  2a-depois poe 0111 (3 acertos)
  3a- 0001
  4a-
 
  ah fiz rapido , alguem deve achar uma maneira de no máximo 4.
 
 
 
  2008/11/18 Douglas Ribeiro Silva [EMAIL PROTECTED]
 
  O jogo dos 4 bits consiste no computador escolher um número de 4 bits
  e o usuário tentar adivinhar. Para cada palpite do usuário o
  computador retorna quantos bits ele acertou.
 
  Ex: o computador escolhe 0101
 
  Usuario: 
  PC:2
  Usuario: 0100
  PC: 3
  Usuario: 
  PC: 2
  Usuario: 0111
  PC: 1
  Usuario: 0101
  PC: 4
 
  Qual a melhor estratégia para o jogo? O jogador deve sempre trocar a
  quantidade de dígitos que o computador indicar? Qual a quantidade
  máxima que um usuário inteligente gastaria para acertar o numero?
 
 
 =
  Instruções para entrar na lista, sair da lista e usar a lista em
  http://www.mat.puc-rio.br/~obmlistas/obm-l.htmlhttp://www.mat.puc-rio.br/%7Eobmlistas/obm-l.html
 
 =
 
 

 =
 Instruções para entrar na lista, sair da lista e usar a lista em
 http://www.mat.puc-rio.br/~obmlistas/obm-l.htmlhttp://www.mat.puc-rio.br/%7Eobmlistas/obm-l.html
 =





Re: [obm-l] Jogo dos 4 bits

2008-11-18 Por tôpico Ralph Teixeira
Se o objetivo eh minimizar o numero **maximo** de palpites... Certamente, eh
possivel adivinhar em um maximo de 5 palpites, usando a seguinte estrategia
de ir trocando um digito de cada vez (Pi=i-esimo palpite, Ri=i-esima
resposta):

P1=
P2=0001
P3=0011
P4=0111

Se a resposta melhorou ao passar de Pi para Pi+1, eh porque aquele digito
que voce trocou estah correto, e vice-versa. Ou seja, apos estes 4 palpites,
voce jah sabe os ultimos 3 digitos com certeza.
Agora basta olhar a resposta a P1 para descobrir se o digito incerto eh 0 ou
1; assim, o 5o palpite serah correto.

Exemplo:
R1=1, R2=2, R3=1 e R4=2.
Como R2R1, o ultimo digito eh 1, isto eh, xxx1 (pois esta eh a unica
diferenca entre P1 e P2);
Como R3R2, xx01.
Como R4R3, x101.
Enfim, como R1=1, soh tem um 0 na resposta, entao 1101 eh a resposta.

Esta estrategia eh facilmente generalizavel: sempre eh possivel adivinhar um
numero de n bits com, no maximo, n+1 palpites (agora, serah que dah com
menos?).

Abraco,
  Ralph

2008/11/18 Douglas Ribeiro Silva [EMAIL PROTECTED]

 O jogo dos 4 bits consiste no computador escolher um número de 4 bits
 e o usuário tentar adivinhar. Para cada palpite do usuário o
 computador retorna quantos bits ele acertou.

 Ex: o computador escolhe 0101

 Usuario: 
 PC:2
 Usuario: 0100
 PC: 3
 Usuario: 
 PC: 2
 Usuario: 0111
 PC: 1
 Usuario: 0101
 PC: 4

 Qual a melhor estratégia para o jogo? O jogador deve sempre trocar a
 quantidade de dígitos que o computador indicar? Qual a quantidade
 máxima que um usuário inteligente gastaria para acertar o numero?

 =
 Instruções para entrar na lista, sair da lista e usar a lista em
 http://www.mat.puc-rio.br/~obmlistas/obm-l.html
 =