Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

競技プログラミング用の自動実行環境つくった

$
0
0

はじめに

競技プログラミングを、データ構造とアルゴリズムの勉強のためにやろうと思っていて、最近は開発ツールの開発に精神を持っていかれてしまいました。まあまあ使いやすいものになったので、よかったら使ってみてください(改善点等あれば是非教えてください!)。こちらに掲載したテストスクリプトと組み合わせることで、自動テストスクリプトとなります。その内1つのページにまとめるかもしれません。

環境構築

ファイル更新検知のためにfswatchというコマンドを用いる。

environment
# Mac$ brew install fswatch
# Ubuntu$ sudo apt install fswatch

組み合わせたもの

スクリプト実行ディレクトリにtest.shを配置することで、ファイル更新時に自動で入力をテストしてくれる。また、正解データと出力を上下に並べて表示するため、簡単に正解かどうか確認することができる。

autoreloader.sh
#!/bin/bashwhile :;do
    ./test.sh
    res=$(fswatch -1.>/dev/null)done

自動コンパイル実行だけを使用したい方向け

test.shに関係なく自動更新する場合は、以下のようにコンパイルコマンドと実行コマンドを記述することで自動実行できる。

autoreloader.sh
#!/bin/bashwhile :;do
  g++ -o main.out main.cpp
  ./main.out
  res=$(fswatch -1.>/dev/null)done

Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>