いむらや競プロ雑記

キーワード:競プロ、育児、石川県

AHC003でPythonでビジュアライザ動かせなかった人へ

atcoder.jp

AHC003に参加し、272...点で、上1/3ちょいでした。
AHC001もAHC002も一応参加したけど、下1/4にも及ばなかったので、自分としては健闘したかなと思います。

さて、その結果とはあまり関係ないのですが。
公式で提供されているRustのビジュアライザで「Pythonの自分のプログラムをどう動かしていいかわからない」という人はいませんか?(自分だけ?)

  • 私のレベル感
    • 環境構築が苦手、たまに必要に迫られても、ほぼググる時間
    • Linuxも苦手、同上
    • Rust未経験、Pythonどうやって呼ぶの?
    • Windowsに直接Pythonを突っ込み、なんの工夫もないVSCodeで競プロしてます
    • たまにC++いじる時はVS(本業がC++よりなこともあり、オフではやる気がわかない)
    • ビジュアライザはビルドできただけで、全然使えなかった(AHC003後半まで)

結論としては、以下の微妙~~~な方法で、最低限、ビジュアライザを動かせたのと、最低限、効率化できました。

  1. 諦めてpyinstallerでexe化する
  2. ビジュアライザでテストする
  3. ビジュアライザで画像作る
  4. その画像開く
  5. ここまでをバッチ化する

具体的にはこんな感じのバッチです。このバッチを、ビジュアライザと同階層に配置し、叩いてます。

pyinstaller C:\Users\xxx\Desktop\AtCoder\test.py --onefile
cargo run --release --bin tester in\0000.txt C:\Users\xxx\Desktop\ahc003\dist\test.exe > out.txt
cargo run --release --bin vis in\0000.txt out.txt
start out.svg
pause

※ビジュアライザのビルド、および、pyinstallerのインストールは、何も詰まるところがなかったので省略します。


ということで、ビジュアライザ自体を改造したり、もっと効率化的にぶん回したり、する人が多いのだと思いますが・・・
「動かすことすらままならねえ!」という方は、こんな感じで、とりあえず特定ケースで動かすだけでも、やってみてはいかがでしょうか(自分だけ???)