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
450
競プロライブラリ環境構築
2022/3月に行われた卒業生追い出しLTでの発表資料です
matumoto
March 03, 2022
Tweet
Share
More Decks by matumoto
See All by matumoto
Goトランザクション処理
matumoto
0
28
いまいちどスライスの 挙動を見直してみる
matumoto
0
300
Go1.22のリリース予定の機能を見る
matumoto
0
58
GoのUnderlying typeについて
matumoto
0
160
Typed-nilについて
matumoto
0
220
GoのType Setsという概念
matumoto
0
16
GoのRateLimit処理の実装
matumoto
0
250
Webプッシュ通知触ってみた
matumoto
0
31
拡張ユークリッドの互除法の紹介
matumoto
0
210
Other Decks in Technology
See All in Technology
偏光画像処理ライブラリを作った話
elerac
1
150
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
160
Potential EM 制度を始めた理由、そして2年後にやめた理由 - EMConf JP 2025
hoyo
2
1.6k
Visualize, Visualize, Visualize and rclone
tomoaki0705
9
75k
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
6
1.9k
Exadata Database Service on Cloud@Customer セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
2
1.5k
PHPカンファレンス名古屋-テックリードの経験から学んだ設計の教訓
hayatokudou
2
530
JEDAI Meetup! Databricks AI/BI概要
databricksjapan
0
300
NFV基盤のOpenStack更新 ~9世代バージョンアップへの挑戦~
vtj
0
330
表現を育てる
kiyou77
1
230
OPENLOGI Company Profile
hr01
0
60k
ESXi で仮想化した ARM 環境で LLM を動作させてみるぞ
unnowataru
0
150
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
44
13k
Code Reviewing Like a Champion
maltzj
521
39k
How GitHub (no longer) Works
holman
314
140k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Music & Morning Musume
bryan
46
6.4k
We Have a Design System, Now What?
morganepeng
51
7.4k
Visualization
eitanlees
146
15k
Building an army of robots
kneath
303
45k
Transcript
競プロライブラリ環境構築 matumoto
自己紹介 • 名前:matumoto • AtCoder 水 •
どんな環境で競プロ してますか?
None
自作ライブラリ 使ってますか?
自作ライブラリ is 何 • 事前にデータ構造とかを書いておいて、コンテストのときにパッと取り出してコード 中で使用するもの ◦ UnionFind ◦ SegmentTree
◦ など • 自作したライブラリのこと • GitHub とかにあげて公開している人もいる
自作ライブラリ どう活用してますか?
コピペ勢 • あらかじめ書いておいたライブラリをコピペして持ってくる • メリット ◦ やるだけ ◦ 何かのツールを使う必要がない ◦
簡単 • デメリット ◦ 持ってくる、探すときに時間がかかる ◦ コピペミスで時間をロスすることがあるかも
スニペット勢 • あらかじめ書いておいたライブラリをスニペットにしておく • メリット ◦ コピペと違ってコピペミスなどが起きない ◦ 時間のロスが少ない •
デメリット ◦ スニペット機能のあるエディタもしくはツールが必要 ◦ 準備が若干めんどくさい ▪ ライブラリを更新したらスニペットも更新する必要がある
oj-bundle勢(C/C++) • ヘッダーファイル(.h / .hpp)を提出の際展開する • メリット ◦ 管理がしやすい ▪
ライブラリをそのままインクルードするだけなので、スニペットなどと違って更新の必要がない ▪ ライブラリ間の依存関係をかなりすっきりできる ◦ スニペットと同じで、時間ロスが少ない ◦ コピペミスもない • デメリット ◦ 準備がめんどくさい ◦ ライブラリのコードを問題ごとに変更したいときに融通が利かない
依存関係が簡潔!!
oj-bundle&スニペット が良さそう
ライブラリ→スニペットのツールがあったらいいな •
https://github.com/matumoto1234/snippet-generator
スニペットの自動生成が可能! • ライブラリを更新したらCIかなんかで走らせてもよさ そう 生成されたスニペット→
ありがとう!