私は最近、Facebookがプログラミングの課題を抱えていることを発見しました。
ハノイの塔タイプの問題を解決できるアルゴリズムを作成するように求めるサンプルチャレンジがあります。多数のペグとディスク、初期構成と最終構成が与えられます。アルゴリズムは、最終構成に到達してステップを出力するために、可能な限り少ないステップを決定する必要があります。
このサンプルチャレンジでは、45分の制限時間が与えられますが、制限時間を過ぎてもコードがテストされるかどうかを確認できます。
私はそれを解決できるかわいい数学の解法を知りませんでした。それで、私は自分でできる限り最善の課題を解決しようとしました。
うまく機能し、合格したアルゴリズムを作成することができました。ただし、作成に4時間以上かかり、45分という要件よりもはるかに長くかかりました。割り当てられた時間よりもずっと長くかかったので、実際の挑戦を試みたことはありません。
しかし、これは私を不思議に思わせました。実際には、それが私をそれほど長くかかったことは本当に重要ですか?これは、このような場所(Facebookだけでなく、Google、Fog Creekなど)で仕事に就くことができず、抱負を下げる必要がある、または実際に合格したという事実を示すサインです私の最初の試みでは、時間がかかりすぎたとしても、良いと見なされますか?