---
title: 競プロ環境構築概論
tags: 
author: [uriboooooon](https://docswell.com/user/rkkmkg)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/4EM4N1WPJW.jpg?width=480
description: 競技プログラミングを快適にするための構成を説明
published: September 30, 24
canonical: https://docswell.com/s/rkkmkg/ZEXELG-2024-09-30-204823
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/4EM4N1WPJW.jpg)

競技プログラミング
環境設定のススメ
構成から解説


# Page. 2

![Page Image](https://bcdn.docswell.com/page/PERWDLYYJ9.jpg)

お前は
誰だ？
24卒
競プロは弱いです
好きなこと
• おでかけ
• 温泉
• 聖地巡礼
• 18切符
• サブカル
• アニメ
• きらら
• 評論
やってみたいこと
•
•
•
•
•
おうちサーバー
ネタツールを作る
コミケに本を出す
離島めぐり
寝台列車に乗車


# Page. 3

![Page Image](https://bcdn.docswell.com/page/P7XP1WG4JX.jpg)

競技プログラミングってなに？


# Page. 4

![Page Image](https://bcdn.docswell.com/page/37KD2V4PED.jpg)

数学的問題をプログラミングで解くやつ
• 数学のテストの情報科学バージョンと思ってもらえば
• 手作業だと作業量が多すぎて解けないのでコンピュータにやら
せます
問題は地点からある地点の最短距離を求めるとかめっちゃ速く計
算するにはどうするとか
codeforces
主なサイト


# Page. 5

![Page Image](https://bcdn.docswell.com/page/LJ3R4ML4E5.jpg)

基本的な問題を解く流れ
提出したときに不
正解だとわかる
テスト失敗
(1)コードを書く
エディタ
(2)テストをする
ブラウザ
(3)提出する +
正解したかチェック
ブラウザ


# Page. 6

![Page Image](https://bcdn.docswell.com/page/8JDYQ6N5JG.jpg)

手動でテストしたとき


# Page. 7

![Page Image](https://bcdn.docswell.com/page/VEP6LY5D78.jpg)

し
よ
う
環
境
構
築
そ
う
だ


# Page. 8

![Page Image](https://bcdn.docswell.com/page/27V3QGPGJQ.jpg)

構成の流れ(あくまでも一例です)
tasks.json
ファイルの
パスを渡す
エディター
パスからツールに渡す
変数を作成するで
スクリプト
Dockerなどで仮想コンテナを作成
適宜ツールをインストールするスクリプト追加
テスト、提出
競プロツール


# Page. 9

![Page Image](https://bcdn.docswell.com/page/5JG3W8QDEL.jpg)

なぜ仮想環境


# Page. 10

![Page Image](https://bcdn.docswell.com/page/47Q539KXEP.jpg)

エディタの役割


# Page. 11

![Page Image](https://bcdn.docswell.com/page/KE491XP2J1.jpg)

スクリプトの役割
前処理をしてツールを動作させる
シェルスクリプトで直接実行させるかpythonのsybprocessとか
でツールを実行
ファイル名は
abc250/bin/a.cpp
です
スクリプト
abc250 a
を引数で渡すから
実行してくれや
スクリプト
競プロツール
かしこま！


# Page. 12

![Page Image](https://bcdn.docswell.com/page/L71KGN9KEG.jpg)

ツールの役割


# Page. 13

![Page Image](https://bcdn.docswell.com/page/G7WDK4QPE2.jpg)

Appendix


# Page. 14

![Page Image](https://bcdn.docswell.com/page/4JZGZ2W673.jpg)

好きな環境発表ドラゴン


# Page. 15

![Page Image](https://bcdn.docswell.com/page/YE6YZVGLJV.jpg)

ローカル
環境立ち上げが早いから心理
的ハードルがない
ただし環境が汚れたり更新と
かで壊れることも


# Page. 16

![Page Image](https://bcdn.docswell.com/page/GE5GWDVME4.jpg)

WSL
Windows使いなら
僕はこの環境を愛用していま
したがバージョンアップデー
トで壊れました


# Page. 17

![Page Image](https://bcdn.docswell.com/page/972YQ83R7R.jpg)

仮想環境
どのPCで作っても大体同じ
おま環がない
ただし立ち上げに時間がかかる


# Page. 18

![Page Image](https://bcdn.docswell.com/page/DJYGW615JM.jpg)

ブラウザ上で
使えるやつ
競プロサイトのLeetcodeで課金
すると使える
他で見たことないので誰か作って
ください(切実)
Cloud9とかGithub code space
やGitpodがいいかも


