Foobar Challenge: Processo de Contratação Secreto do Google

Nível 4: Achei este nível o mais difícil de todos os cinco. Requeria a implementação de vários conceitos para resolver um único problema. Há um total de duas questões neste nível e é dado um tempo total de duas semanas para resolver cada questão.

Extensivo conhecimento de algoritmos e estruturas de dados é necessário neste nível.

A primeira questão foi baseada no conceito de teoria dos números e gráficos. Eu tive que implementar o algoritmo Bellman-Ford para resolver esta questão.

Levou-me muito tempo para compreender estes conceitos e implementá-los para resolver estas questões. Mas eu fui capaz de resolver as duas questões a tempo.

Após completar com sucesso o nível 4 você recebe outro link de referência para convidar mais um amigo para tentar este desafio!

Level 5: Este foi o segundo problema mais difícil de todo o desafio e foi baseado em um conceito puramente matemático. O nível final só tinha uma única pergunta e foram dados 22 dias para resolver esse problema!

O problema exigia a compreensão das permutações e combinações e implementação do teorema da enumeração Pólya e do lema de Burnside. Após a compreensão destes dois teoremas a parte de codificação foi bastante simples.

Com a submissão desta questão, o Desafio Google Foobar está completo!

>

>

(Imagem do Autor) Desafio Foobar Concluído

Após terminar o desafio, recebi uma string criptografada que foi fácil de decifrar usando base64.

import base64encrypted="THE ENCRYPTED MESSAGE"my_eyes=str.encode("MY USER NAME")decoded=base64.b64decode(encrypted)decrypted=""for i in range(0,len(decoded)):decrypted+=chr((my_eyes ^ decoded))print(decrypted)

Este foi o código que usei para decifrar a mensagem. A mensagem decifrada foi:

{'success' : 'great', 'colleague' : 'esteemed', 'efforts' : 'incredible', 'achievement' : 'unlocked', 'rabbits' : 'safe', 'foo' : 'win!'}

O que acontecerá após completar o desafio?

Após a conclusão bem sucedida de todos os cinco níveis, é provável que você seja contatado pelo recrutador do Google para uma entrevista.

Você pode receber um e-mail ou um telefonema e se você decifrar a entrevista, então você pode ser contratado no Google.

Como conseguir o Desafio Foobar?

Felizmente, este desafio não está disponível para todos e o Google o envia apenas para desenvolvedores específicos (pode ser baseado em seu histórico de busca – palavras-chave técnicas).

Não se preocupe se você ainda não conseguiu este convite, esta não é a única maneira de conseguir um emprego no Google.

Não encontre o Foobar, deixe o Foobar encontrá-lo!

>

>>

(Imagem do Autor)

Conclusão

Eu diria que esta é uma grande oportunidade para aprender e eu recomendaria que você resolvesse as perguntas se você receber um convite.

>

A resolução dos problemas não mantém o seu objectivo de ser contratado no Google, mas de aprender as novas técnicas e experimentar um dos melhores desafios de codificação.

Foobar é mais sobre aprender e implementar, em vez de saber tudo antes!

Se você tiver alguma dúvida ou comentário, por favor coloque-os na seção de comentários.

Para melhorar o seu código veja o nosso artigo aqui.

(Imagem do Autor)

Deixe uma resposta

O seu endereço de email não será publicado.