EPI Judge は、書籍『Elements of Programming Interviews』の付録として機能することを目的としています。具体的には、このプロジェクトは以下の内容で構成されます。
ジャッジをダウンロードする方法は次のとおりです。
$ git clone https://github.com/adnanaziz/EPIJudge.git
git
お持ちでない場合は、git 自体のインストールに関する優れたチュートリアルを参照してください。
これらの 1 分間のビデオをチェックして、ジャッジを始めるのがいかに簡単かを確認してください。
PyCharm、Eclipse、NetBeans
IntelliJ IDEA、Eclipse
CLion、Visual Studio 2017
$ python3 <program_name>.py
Makefile
を使用します。
特定のプログラムをコンパイルして実行します。
$ make <program_name>
例:
$ make Anagrams
最後に編集したプログラムをコンパイルして実行します。
$ make
GCC と Clang を直接呼び出すことで、すべてのプログラムを手動でコンパイルして実行できます。
$ g++ -pthread -std=c++14 -O3 -o anagrams anagrams.cc
提供されている Makefile を使用することもできます: make <program_name>
。提供されている CMakeLists.txt ファイルで CMake を使用することもできます。
$ make
デフォルトの Makefile ターゲットは、最後に編集されたファイルです。
$ make anagrams
ご質問やフィードバックはお気軽に[email protected]
および[email protected]
までお送りください。
インストールやテストのバグなど、問題がある場合は、お気軽に電子メールでお問い合わせください。できるだけ詳しくお知らせください。問題のスクリーンキャスト ビデオを YouTube にアップロードできるのが理想的です。それ以外の場合は、スクリーンショットをアップロードしてください。問題と使用環境 (OS、言語バージョン、IDE とバージョン) の説明が詳細であればあるほど、サポートが容易になります。
上記の IntelliJ 統合開発環境はクラス最高であり、EPI ジャッジで問題なく動作する無料バージョンがあります。これらにはコンパイラは含まれません。 Java 開発環境は Oracle から、Python 開発環境は Python.org から入手できます。 C++ の場合、複数のオプションがあります。最も簡単な方法は、IDE とコンパイラの両方を含む VisualStudio をインストールすることです。 Google はインストールに関する優れたリソースです。
ジャッジではどのようなコンパイラがサポートされていますか?
ソリューションではどのようなコンパイラがサポートされていますか?
古いバージョンでコンパイルできた場合はお知らせください。
このスクリーンショットを見てください。
ジャッジ ハーネスはかなり複雑です (ただし、非標準の言語機能やライブラリは使用しません)。研究するのは歓迎ですが、変更しないことをお勧めします (更新時に厄介なマージ競合が発生する可能性があるため)。
プロジェクトをお気に入りの IDE にインポートしたい場合は、おそらく CMake を使用して IDE プロジェクトを作成する必要があります (CLion ではその必要はありません。CLion はすぐに CMake をサポートします)。
Visual Studio プロジェクトの生成レシピの例を次に示します (CMake でサポートされているすべての IDE のリスト)。 CMake をインストールした後、ターミナルを開き、 epi_judge_cpp
フォルダーに移動して、次のコマンドを実行します。
mkdir vs
cd vs
cmake -G "Visual Studio 15 2017" ..
次に、Visual Studio でepi_judge_cpp/vs/epi_judge_cpp.sln
ソリューションを開くだけで、すべての EPI プログラムがロードされます。
このプロジェクトのルートにあるファイルindex.htmlは、問題の進行状況を追跡します。具体的には、各章に展開タブがあります。それをクリックすると、たとえば以下のように進捗状況が表示されます。このファイルはプログラムを実行するたびに更新されます。このファイルを使用して、書籍の問題をスタブ プログラムにマップできます。
過去数か月間このリリースを試した何百人ものユーザーに大きな声を上げます。いつものように、私たちは読者の熱意と献身に感銘を受けずにはいられません。それは私たちの最高のものを引き出すのに役立ちました。 EPI Judge を実現するために卓越したソフトウェア エンジニアリング スキルを活用してくれた Viacheslav Kroilov に全員が感謝します。