Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
競プロライブラリ環境構築
Search
matumoto
March 03, 2022
Technology
0
730
競プロライブラリ環境構築
2022/3月に行われた卒業生追い出しLTでの発表資料です
matumoto
March 03, 2022
Tweet
Share
More Decks by matumoto
See All by matumoto
testingを眺める
matumoto
1
180
sync/v2 プロポーザルの 背景と sync.Pool について
matumoto
0
610
Goトランザクション処理
matumoto
1
62
いまいちどスライスの 挙動を見直してみる
matumoto
0
370
Go1.22のリリース予定の機能を見る
matumoto
0
70
GoのUnderlying typeについて
matumoto
0
210
Typed-nilについて
matumoto
0
350
GoのType Setsという概念
matumoto
0
36
GoのRateLimit処理の実装
matumoto
0
450
Other Decks in Technology
See All in Technology
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
310
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
370
Context Engineeringの取り組み
nutslove
0
220
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.1k
クレジットカード決済基盤を支えるSRE - 厳格な監査とSRE運用の両立 (SRE Kaigi 2026)
capytan
6
1.9k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
IaaS/SaaS管理における SREの実践 - SRE Kaigi 2026
bbqallstars
4
1.5k
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
0
110
あたらしい上流工程の形。 0日導入からはじめるAI駆動PM
kumaiu
5
740
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
We Built for Predictability; The Workloads Didn’t Care
stahnma
0
130
2026年はチャンキングを極める!
shibuiwilliam
8
1.9k
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Between Models and Reality
mayunak
1
180
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
71
Believing is Seeing
oripsolob
1
50
How to Talk to Developers About Accessibility
jct
2
120
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Docker and Python
trallard
47
3.7k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
6.9k
How to build a perfect <img>
jonoalderson
1
4.9k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
160
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
120
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
Transcript
競プロライブラリ環境構築 matumoto
自己紹介 • 名前:matumoto • AtCoder 水 •
どんな環境で競プロ してますか?
None
自作ライブラリ 使ってますか?
自作ライブラリ is 何 • 事前にデータ構造とかを書いておいて、コンテストのときにパッと取り出してコード 中で使用するもの ◦ UnionFind ◦ SegmentTree
◦ など • 自作したライブラリのこと • GitHub とかにあげて公開している人もいる
自作ライブラリ どう活用してますか?
コピペ勢 • あらかじめ書いておいたライブラリをコピペして持ってくる • メリット ◦ やるだけ ◦ 何かのツールを使う必要がない ◦
簡単 • デメリット ◦ 持ってくる、探すときに時間がかかる ◦ コピペミスで時間をロスすることがあるかも
スニペット勢 • あらかじめ書いておいたライブラリをスニペットにしておく • メリット ◦ コピペと違ってコピペミスなどが起きない ◦ 時間のロスが少ない •
デメリット ◦ スニペット機能のあるエディタもしくはツールが必要 ◦ 準備が若干めんどくさい ▪ ライブラリを更新したらスニペットも更新する必要がある
oj-bundle勢(C/C++) • ヘッダーファイル(.h / .hpp)を提出の際展開する • メリット ◦ 管理がしやすい ▪
ライブラリをそのままインクルードするだけなので、スニペットなどと違って更新の必要がない ▪ ライブラリ間の依存関係をかなりすっきりできる ◦ スニペットと同じで、時間ロスが少ない ◦ コピペミスもない • デメリット ◦ 準備がめんどくさい ◦ ライブラリのコードを問題ごとに変更したいときに融通が利かない
依存関係が簡潔!!
oj-bundle&スニペット が良さそう
ライブラリ→スニペットのツールがあったらいいな •
https://github.com/matumoto1234/snippet-generator
スニペットの自動生成が可能! • ライブラリを更新したらCIかなんかで走らせてもよさ そう 生成されたスニペット→
ありがとう!