はじめに
みなさん、AtCoderしてますか?自分は少し前に茶色コーダーになった初心者のMurabitoです。
AtCoderはプログラミングスキルだけでなく時間との勝負でもあります。なので、入力部分のコーディングや、テストにかける時間を減らして、問題を解くのに集中したいですよね?
なので今回はatcoder-tools
という入力部分のコードの自動生成、テストや提出の自動化をしてくれる便利なツールをvscode-powertools
を使ってAtcoder用にVSCode環境を整えたいと思います。
また、ac-library
というmodintなど便利なAtCoder公式神ライブラリをインストール及びインクルードする方法も説明します。
今回は、C++でAtcoderをより効率的に解けるようにしますが、Nimなど他の言語でも使う方法も他の記事で説明します。
コード
さきにGitHubにコードをあげておきます。
https://github.com/forest1102/atcoder-vscode-template
templateとして作ったので、Use this template
から使えます。
想定環境
今回、環境を作るにあたり、Python3、Node.JSが入っている前提で話を進めます。
インストールされてない場合は、以下を参考にしてください
Mac:
Windows 10:
インストール
まず、atcoder-tools
とvscode-powertools
をインストールします。
atcoder-tools のインストール方法
pip install atcoder-tools
VSCode
Power Tools のインストール方法
VSCode の Extensions
からvscode-powertools
を探してインストール
各種設定
デフォルトでは c++用になっています
設定は.vscode/settings.json
を開いて、ego.power-tools
の中で行えます
例えば、atcoder.gen
, atcoder.test
, atcoder.submit
の中にある params
を変更して atcoder-tools に渡す引数を変更できます。
なお、${activeFile}
には実行するファイル名、 ${workspaceRoot}
にはワークスペースの絶対パスが入ります。
ワークスペースとは今開いて作業しているフォルダのことです
他の変数はこちらを参照してください
atcoder.test
や atcoder.submit
のなかにある compiler
を変更してコンパイラを変更できます
AC-Library のインストール
github からインストールしてインクルードパスに入れて、#include<atcoder/all>
のようにインクルードすると使用できます。
インストールはgit submodule add
を使います。
cd (ワークスペースへのパス)
git submodule add https://github.com/atcoder/ac-library.git ac-library
そしてac-library
がワークスペースにインストールされているのが確認できたら以下のファイルを変更します。
.vscode/c_cpp_properties.json
のconfigurations.includePath
に"./ac-library/**"
を追加して以下のようにします。
{
"configurations": [
{
"name": "Mac",
"includePath": ["/usr/local/include/**", "./ac-library/**"],
"defines": [],
"macFrameworkPath": [],
"compilerPath": "/usr/bin/g++",
"cStandard": "gnu17",
"intelliSenseMode": "gcc-x64"
}
],
"version": 4
}
そして.vscode/settings.json
のego.power-tools
にあるatcoder.test
と atcoder.submit
のoptions.compiler
をg++ -std=c++17 -fsanitize=address -D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC -I${workspaceRoot}/ac-library ${activeFile}
に変更することで使えます。
ドキュメント