devaneios online

posts recentes

Mais um Quizz no codebits

Codebits 2008 - Quiz IX

Codebits 2008 - Quiz V - ...

subscrever feeds

arquivos

Julho 2013

Setembro 2012

Agosto 2012

Julho 2012

Maio 2012

Março 2012

Janeiro 2012

Dezembro 2011

Novembro 2011

Outubro 2011

Setembro 2011

Agosto 2011

Julho 2011

Junho 2011

Maio 2011

Abril 2011

Março 2011

Fevereiro 2011

Janeiro 2011

Dezembro 2010

Novembro 2010

Outubro 2010

Setembro 2010

Agosto 2010

Julho 2010

Junho 2010

Maio 2010

Abril 2010

Março 2010

Janeiro 2010

Julho 2009

Junho 2009

Abril 2009

Março 2009

Fevereiro 2009

Janeiro 2009

Dezembro 2008

Novembro 2008

Outubro 2008

Agosto 2008

Julho 2008

Junho 2008

Maio 2008

Abril 2008

Março 2008

Fevereiro 2008

Janeiro 2008

Em destaque no SAPO Blogs
pub
Sexta-feira, 31 de Outubro de 2008

Mais um Quizz no codebits

Mais um, e desta vez mais difícil. Fartei-me de usar o google e a wikipedia mas na maior parte dos casos a pesquisa inicial não dava nada...

Era preciso descobrir como formular a pergunta e depois a resposta até parecia simples.

Não sei quanto tempo o JP terá perdido a preparar os quizzes mas não deve ter sido pouco. Há aqui algumas perguntas muito rebuscadas.

O melhor de tudo são aquelas em que a solução esteve sempre à nossa frente. Tão obvia e que só lhe faltava saltar e dizer "sou eu! sou eu!".

Depois de umas horas a pesquisar pela net, fazemos mais uma tentativa e acertamos. Quando percebemos, só nos resta abanar a cabeça reconhecendo que afinal não era tão difícil como inicialmente pensáramos...

 

Mas... o pior de tudo é que tive de instalar um bloqueador de flash para não ter de estar sempre a ouvir esta pérola:


 

Não sei se perdoo ao JP...

 

 

AR

mexe mexe...

publicado por AReis às 00:28
link do post | comentar | favorito
Sábado, 25 de Outubro de 2008

Codebits 2008 - Quiz IX

Pois é... Este tambem já está.

Tem algumas partes mais dificeis, mas no geral até achei acessível. Posso dizer que dos 'quizzes' que fiz, este foi o que me deu mais gozo. Tive de usar google, pesquisa do sapo, wikipedia, e muito common sense.

Ah... uma boa dose de luck tb ajuda ...

 

Um outro quiz do género, mas mais fácil é http://epuzzle.co.uk São 23 páginas e tb dá um certo gozo. Se souberem de mais avisem...

 

AR

sinto-me: a dormir em pé (sentado)
música: something by Nightwish
publicado por AReis às 03:51
link do post | comentar | ver comentários (2) | favorito
Terça-feira, 21 de Outubro de 2008

Codebits 2008 - Quiz V - A minha solução

Conforme prometido, e agora que este 'quiz' já terminou, deixo aqui a minha solução.

Se bem se recordam, eu fiquei cheio de pica porque já conhecia estas imagens. Quer dizer... já as tinha visto e tinha ideia do que eram. Sendo assim pensei para comigo "Ah... Eu sei o que isto é. Eu consigo quebrar isto!" Não foi assim tão simples. Muita gente sabia o que era e a prova é que fui o 20º a apresentar a solução.

Primeiro tinhamos que perceber o que era isto:

QRCode do quiz V

 

Isto é um QRCode. Quer dizer... não é bem, mas eu na altura nem reparei.

E, cheio de pica, fiz o seguinte:

 

#1 - Guardar a imagem no meu PC. Cálculei que fosse necessária alguma manipulação da mesma, e não me enganei.

 

#2 - Procurar descodificadores online. Andei pelo google, e distraí-me quando percebi a quantidade brutal de descodificadores para usar no telemóvel, Tentei uns quantos, mas não havia meio de conseguir um que fosse compatível com o meu telefone. Às tantas desisti de usar o telemóvel e acabei por usar o ZXing.

 

#3 - Tentar descodificar a imagem. O ZXing rejeita-a dizendo "Isto não é um QRCode". Bolas...Sera fácil demais... Bem, aí comecei a manipular a imagem. Passei o verde para branco, e nada... Inverti o preto com o branco e nada...

 

#4 - Reparei então que os exemplos de QRCodes tinham sempre 2 quadrados alinhados na margem esquerda. "O Cabr$%#% rodou isto!" (Desculpa JP). Toca de abrir o gimp e rodar a imagem 90 graus. Continua a não dar.... Nova inversão de cores e nada... Fiz mais algumas coisa mas nada funcionava. Desisti e fui dormir...

 

#5 - No dia seguinte, e conforme já relatei, ouvi uns colegas a passarem pelos mesmos passos... até que um deles fala numa rotação em torno do eixo vertical.

Bolas! Podia ser isso.. Era mesmo porque ele até leu a pergunta em voz alta.

Não sei se foi consciente ou não mas o certo é que nem ouvi bem a pergunta.

 

#6 - Já novamente em casa, fui experimentar de novo... Rotação, inversão de cores e de repente o ZXing "cospe" cá para fora:

"Para o quinto desafio, o zarolho consultar: Quantas vogais em ababab no decimo que termina com inveja?"

 

#7- Inicialmente pensei que fosse novo trocadilho e que precisasse de alguma outra manipulação. Zarolho? ababab? Quem é o zarolho?

Obviamente que é Camões... Décimo? Só pode ser o décimo canto dos Lusíadas.

Fui a www.oslusiadas.com e confirmei que o décimo canto termina com a palavra enveja, forma arcaica de inveja.

 

#8 - Aqui espalhei-me ao comprido. Não sei bem porque, meti na cabeça que era para contar apenas as vogais da última estrofe. Mais propriamente as vogais das 6 primeiros versos (ababab) da estrofe. No caso, seriam as vogais dos versos:

 

Ou fazendo que, mais que a de Medusa,
A vista vossa tema o monte Atlante,
Ou rompendo nos campos de Ampelusa
Os muros de Marrocos e Trudante,
A minha já estimada e leda Musa
Fico que em todo o mundo de vós cante,

 

#9 - Resolvi ensair os meus parcos conhecimentos de perl e fiz um programazito que contava as vogais. Novo problema. Não dava conta certa. Depois de algum debug descobri que o problema tinha a ver com as vogais acentuadas - á e ó.

Não fosse por isso, contei-as (e recontei-as várias vezes) à mão. Eram exactamente 80. Enviei um mail com a resposta.

 

#10 - Recebi um mail de volta, passado algum tempo, e dizia "São mais. muitas mais". Só aí se fez luz. Era o canto todo, não era apenas a última estrofe.

 

#11 - Voltei à página dos Lusíadas, e gravei o texto num ficheiro. Iniciei a análise do texto. Cada estrofe começa pelo número. Depois uma linha em branco, depois dez linhas de versos e nova linha em branco para começar tudo de novo. 11 linhas para cada estrofe. Para contar as vogais interessavam-me apenas as linhas 3 a 8, inclusivé.

Agora já não podia contar as letras a olho. Era mesmo necessário fazer um programa.

 

Fiz um ciclo while:

 

while ($line=<STDIN>)
{
    $x = ($. % 11) ;
    if ( ($x > 2) && ($x < 9) )  # if it's between 3 and 8 (ababab)

    {

 

O $. é o número da linha actual. % é o operador de módulo. Se x contiver valores entre 3 e 8 é porque a linha actual é para contar as vogais.

Converti tudo para letras minúsculas:

 

$_ = lc($line);
 

Aqui experimentei várias maneiras de contar as vogais. Simples comparações, expressões regulares de perl, todas me davam valores errados. Continuava a não conseguir processar bem as vogais acentuadas.

Foi aqui que tive um momento "Ah!" e resolvi o problema assim:

 

$count += tr/aeiou// ;

$count += (tr/áàâãéèêíìóòôõúù// ) / 2 ;

 

O operador tr (translate?) substitui os caracteres e devolve o número de caracteres substituídos. Na primeira linha considera as vogais sem acentos e vai incrementando o contador count. Na segunda analisa as vogais acentuadas e soma metade do valor retornado. (O tr sobre as vogais acentuadas dava-me sempre o dobro, porque os caracteres acentuados são representados com 2 bytes. Não é exactamente assim, mas é "close enough"). Ao dividir o valor por dois estava a somar apenas 1 por cada vogal acentuada.

Cheguei ao valor de 12598. Que enviei por mail. Realmente é muito diferente de 80.

 

Final: Recebi um mail a confrmar que estava certo. Mas, sinceramente, não estava à espera de ter esta trabalheira toda! Ufa! Já não tenho idade para isto,

 

AR

 

 

 

 

sinto-me: velho
tags: ,
publicado por AReis às 21:53
link do post | comentar | favorito

pesquisar

 

tags

todas as tags