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
850
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
競プロライブラリ環境構築
2022/3月に行われた卒業生追い出しLTでの発表資料です
matumoto
March 03, 2022
More Decks by matumoto
See All by matumoto
Go標準パッケージのI/O処理をながめる
matumoto
0
440
testingを眺める
matumoto
1
220
sync/v2 プロポーザルの 背景と sync.Pool について
matumoto
0
790
Goトランザクション処理
matumoto
1
87
いまいちどスライスの 挙動を見直してみる
matumoto
0
420
Go1.22のリリース予定の機能を見る
matumoto
0
90
GoのUnderlying typeについて
matumoto
0
240
Typed-nilについて
matumoto
0
380
GoのType Setsという概念
matumoto
0
62
Other Decks in Technology
See All in Technology
カートの信頼性を担保するWireMockを使ったe2eテスト
ykagano
0
180
Forza Horizon 6 のテレメトリ機能で 自動運転に使えそうな学習データを集める話
henjin0
0
160
事業価値と Engineering 2026年度版
recruitengineers
PRO
49
23k
え?フロントエンドエンジニアの ワイがインフラも!?
puku0x
1
510
【CEDEC2026】『ウマ娘 プリティーダービー』 英語版のキャラクターの方言や口調をローカライズするための創造的アプローチ
cygames
PRO
1
240
サイバー捜査員研修(後半)
nomizone
1
850
[しろおび夏祭り2026] チャットするAIから、作業するAIへ - 使われ方の変化と、その裏側で起きていること
kk0n
0
1.7k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
19k
Model Studio CLI × Token Plan
maigo999
0
150
強化学習「理論」入門
enakai00
3
3.6k
AWS ネットワーク構築でハマった(ハマりかけた) 5選とそこから得た教訓
nagisa53
4
210
攻撃と防御で学ぶAI時代のプロダクトセキュリティ演習
recruitengineers
PRO
9
2.6k
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
The SEO identity crisis: Don't let AI make you average
varn
0
530
We Are The Robots
honzajavorek
0
300
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
990
Discover your Explorer Soul
emna__ayadi
2
1.3k
Building the Perfect Custom Keyboard
takai
2
840
How Software Deployment tools have changed in the past 20 years
geshan
1
34k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
450
Navigating Team Friction
lara
192
16k
Accessibility Awareness
sabderemane
1
170
Product Roadmaps are Hard
iamctodd
55
12k
Transcript
競プロライブラリ環境構築 matumoto
自己紹介 • 名前:matumoto • AtCoder 水 •
どんな環境で競プロ してますか?
None
自作ライブラリ 使ってますか?
自作ライブラリ is 何 • 事前にデータ構造とかを書いておいて、コンテストのときにパッと取り出してコード 中で使用するもの ◦ UnionFind ◦ SegmentTree
◦ など • 自作したライブラリのこと • GitHub とかにあげて公開している人もいる
自作ライブラリ どう活用してますか?
コピペ勢 • あらかじめ書いておいたライブラリをコピペして持ってくる • メリット ◦ やるだけ ◦ 何かのツールを使う必要がない ◦
簡単 • デメリット ◦ 持ってくる、探すときに時間がかかる ◦ コピペミスで時間をロスすることがあるかも
スニペット勢 • あらかじめ書いておいたライブラリをスニペットにしておく • メリット ◦ コピペと違ってコピペミスなどが起きない ◦ 時間のロスが少ない •
デメリット ◦ スニペット機能のあるエディタもしくはツールが必要 ◦ 準備が若干めんどくさい ▪ ライブラリを更新したらスニペットも更新する必要がある
oj-bundle勢(C/C++) • ヘッダーファイル(.h / .hpp)を提出の際展開する • メリット ◦ 管理がしやすい ▪
ライブラリをそのままインクルードするだけなので、スニペットなどと違って更新の必要がない ▪ ライブラリ間の依存関係をかなりすっきりできる ◦ スニペットと同じで、時間ロスが少ない ◦ コピペミスもない • デメリット ◦ 準備がめんどくさい ◦ ライブラリのコードを問題ごとに変更したいときに融通が利かない
依存関係が簡潔!!
oj-bundle&スニペット が良さそう
ライブラリ→スニペットのツールがあったらいいな •
https://github.com/matumoto1234/snippet-generator
スニペットの自動生成が可能! • ライブラリを更新したらCIかなんかで走らせてもよさ そう 生成されたスニペット→
ありがとう!