Level 4: このレベルが5つの中で一番難しいと思いました。 1つの問題を解決するために、いくつかの概念の実装が必要でした。
このレベルでは、アルゴリズムとデータ構造に関する幅広い知識が求められます。
最初の問題は、数論とグラフの概念に基づいていました。 この問題を解くために、ベルマンフォードアルゴリズムを実装しなければなりませんでした。
これらの概念を理解し、これらの問題を解くために実装するのに非常に時間がかかりました。
レベル4を無事終了すると、もう一人、このチャレンジに挑戦する友人を招待できる紹介リンクがもらえます!
レベル5:これはチャレンジ全体の中で2番目に難しい問題で、純粋に数学的概念に基づいていました。 最後のレベルには問題が1つしかなく、その問題を解くために22日間が与えられました!
この問題では、並べ換えと組み合わせの理解、Pólya列挙定理とBurnsideのレンマの実装が要求されました。 この2つの定理を理解した後は、コーディング部分はとても簡単でした。
この問題の提出をもって、Google Foobar Challengeは終了です!
ありがとうございました。
終了後、
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)これはメッセージを解読したときのコードでした。
{'success' : 'great', 'colleague' : 'esteemed', 'efforts' : 'incredible', 'achievement' : 'unlocked', 'rabbits' : 'safe', 'foo' : 'win!'}課題を完了するとどうなりますか?
5つのレベルをすべて完了すると、Googleの採用担当者から面接のための連絡が来る可能性があります。
Foobar Challenge を取得するには?
残念ながら、このチャレンジは誰でも利用できるわけではなく、Google は特定の開発者にのみ招待を送ります(検索履歴 – 技術キーワードに基づく可能性があります)。
Conclusion
これは勉強するチャンスと言えるので招待を受けたら問題集を解くことをおすすめしたいですね。
問題を解いている間は、Googleに採用されることを目標にするのではなく、新しい技術を学び、最高のコーディング・チャレンジを経験することが大切です。
Foobar は、事前にすべてを知るのではなく、学び、実行することが重要です!
何か質問やコメントがあれば、コメント欄に書き込んでください。
To improve your code check out our article here.
…