-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
257 lines (251 loc) · 13.8 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
<html>
<head>
<meta charset="utf-8">
<link href="bootstrap-5.0.2-dist/css/bootstrap.min.css" rel="stylesheet">
<script src="jquery-3.6.3.min.js"></script>
<script href="bootstrap-5.0.2-dist/js/bootstrap.min.js"></script>
<title>競技プログラミング辞書</title>
<script type="text/javascript">
function OnLinkClick(url) {
if (url == undefined) {
$('#contents').load('index.html');
} else {
$('#contents').load("contents/"+url+" #contents");
}
}
</script>
<style>
.sidebar_fixed {
position: sticky;
top: 60px;
padding: 40px;
margin: 10px;
}
.sidebar_content {
margin-bottom: 100px;
}
code {
display: inline-block;
padding: 0.1em 0.25em;
color: #444;
background-color: #e7edf3;
border-radius: 3px;
border: solid 1px #d6dde4;
}
</style>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/styles/dracula.min.css">
</head>
<body>
<!-- ナビゲーションメニュー -->
<nav class="navbar navbar-expand-lg navbar-light text-dark bg-dark" id="home">
<a class="navbar-brand text-white" href="#">KoseTの競技プログラミング辞書</a>
</nav>
<div class="container" style="padding-top:10px;padding-left:5%;margin:0%;">
<div class="row" style="display:flex;flex-direction:row;">
<div class="col-3" style="display:flex;width:30%;">
<div class="sidebar_content">
<details><summary>全探索</summary>
<ul><li>ビット全探索</li></ul>
<ul><li>深さ優先探索</li></ul>
<ul><li>幅優先探索</li></ul>
<ul><li>順列の全探索</li></ul>
</details>
<details><summary>数学</summary>
<ul><li><a href="javascript:OnLinkClick('GCD.html')">ユークリッドの互除法</a></li></ul>
<ul><li>拡張ユークリッドの互除法</li></ul>
<ul><li>中国剰余定理</li></ul>
<ul><li><a href="javascript:OnLinkClick('EnumDiv.html')">約数全列挙</a></li></ul>
<ul><li>素因数分解</li></ul>
<ul><li>最小公倍数</li></ul>
<ul><li>べき乗の計算</li></ul>
<ul><li>nCrの公式(n+1Cr+1 = nCr+1 + nCr)</li></ul>
<ul><li>オイラーのファイ関数</li></ul>
<ul><li>オイラーのファイ関数テーブル</li></ul>
<ul><li>ベル数</li></ul>
<ul><li>ラグランジュ補間</li></ul>
<ul><li>二項係数</li></ul>
<ul><li>二項係数テーブル</li></ul>
<ul><li>任意mod畳み込み(Arbitrary-Mod-Convolution)</li></ul>
<ul><li>分割数</li></ul>
<ul><li>分割数テーブル</li></ul>
<ul><li>商列挙</li></ul>
<ul><li>形式的冪吸収</li></ul>
<ul><li>第二種スターリング数(Stirling-Number-Of-The-Second-Kind)</li></ul>
<ul><li>約数列挙</li></ul>
<ul><li>素因数分解</li></ul>
<ul><li>素数テーブル</li></ul>
<ul><li>素数判定</li></ul>
<ul><li>組合せ</li></ul>
<ul><li>行列演算</li></ul>
<ul><li>進数変換</li></ul>
<ul><li>階乗</li></ul>
<ul><li>離散対数問題</li></ul>
<ul><li>高速フーリエ変換</li></ul>
<ul><li>Schwartz-Zippelの補題</li></ul>
</details>
<details><summary>幾何学</summary>
<ul><li>点と直線の距離の公式</li></ul>
<ul><li>異なる二つの円の関係</li></ul>
<ul><li>三つの点の間の角度</li></ul>
<ul><li><a href="javascript:OnLinkClick('CircumscribedCircle.html')">異なる三つの点を通る円の中心(外接円)</a></li></ul>
<ul><li>幾何テンプレート</li></ul>
</details>
<details><summary>動的計画法</summary>
<ul><li>ビットDP</li></ul>
<ul><li>桁DP</li></ul>
<ul><li>区間DP</li></ul>
<ul><li>Divide-And-Conquer-Optimization</li></ul>
<ul><li>Monotone-Minima</li></ul>
<ul><li>スライド最小値(Slide-Min)</li></ul>
<ul><li>一次元累積和</li></ul>
<ul><li>二次元累積和</li></ul>
<ul><li>個数制限付きナップサック</li></ul>
<ul><li>最大長方形</li></ul>
<ul><li>最適二分探索木</li></ul>
<ul><li>最長増加部分列</li></ul>
</details>
<details><summary>データ構造</summary>
<ul><li>セグメント木</li></ul>
<ul><li>遅延セグメント木</li></ul>
<ul><li>Binary Indexed Tree</li></ul>
<ul><li>fenwick木</li></ul>
<ul><li>Binary-Trie</li></ul>
<ul><li>Convex-Hull-Trick-Add-Monotone</li></ul>
<ul><li>Li-Chao-Tree</li></ul>
<ul><li>Link-Cut木</li></ul>
<ul><li>ウェーブレット行列</li></ul>
<ul><li>スペーステーブル(Sparse-Table)</li></ul>
<ul><li>スライド区間の昇降k個の和</li></ul>
<ul><li>トライ木</li></ul>
<ul><li>マージ可能ヒープ(Skew-Heap)</li></ul>
<ul><li>列の平方分割(Sqrt-Decomposition)</li></ul>
<ul><li>平衡二分探索木(RBST)</li></ul>
<ul><li>平衡二分探索木(Red-Black-Tree)</li></ul>
<ul><li>永続配列(Persistent-Array)</li></ul>
</details>
<details><summary>modにおける計算</summary>
<ul><li>nCrの計算</li></ul>
<ul><li>逆元の計算</li></ul>
<ul><li>modintの全体</li></ul>
</details>
<details><summary>グループ化</summary>
<ul><li><a href="javascript:OnLinkClick('UnionFind.html')">Unionfind</a></li></ul>
</details>
<details><summary>最短経路問題</summary>
<ul><li>単一始点最短路(Dijkstra)</li></ul>
<ul><li>単一始点最短路(Bellman-Ford)</li></ul>
<ul><li>単一始点最短路(SPFA)</li></ul>
<ul><li>全点対間最短路(Warshall-Floyd)</li></ul>
</details>
<details><summary>文字列の操作</summary>
<ul><li>KMP法</li></ul>
<ul><li>Boyer-Moore法</li></ul>
</details>
<details><summary>グラフ</summary>
<ul><li>オイラー路(Eulerian-Trail)</li></ul>
<ul><li>ハンガリアン法(Hungarian)</li></ul>
<ul><li>二部グラフの最大マッチング(Bipartite-Matching)</li></ul>
<ul><li>二部グラフの最大マッチング(Hopcroft-Karp)</li></ul>
<ul><li>ホールの結婚定理</li></ul>
<ul><li>タットの定理</li></ul>
<ul><li>二重辺連結成分分解(Two-Edge-Connected-Components)</li></ul>
<ul><li>二重頂点連結成分分解(Bi-Connected-Components)</li></ul>
<ul><li>強連結成分分解(SCC)</li></ul>
<ul><li>トポロジカルソート</li></ul>
<ul><li>2-SAT</li></ul>
<ul><li>彩色数(Welch-Powell)</li></ul>
<ul><li>最大クリーク</li></ul>
<ul><li>トリープ</li></ul>
<ul><li>Tarjanのアルゴリズム</li></ul>
<ul><li>Kahnのアルゴリズム</li></ul>
</details>
<details><summary>最大流量問題</summary>
<ul><li>Ford-Fullkerson法</li></ul>
<ul><li>Dinic</li></ul>
<ul><li>Push-Relabel</li></ul>
<ul><li>メンガーの定理</li></ul>
</details>
<details><summary>最小費用流</summary>
<ul><li>最小流量制限付き最大流</li></ul>
<ul><li>最小費用流(Primal-Dual)</li></ul>
</details>
<details><summary>最大独立集合</summary>
<ul><li>Maximum-Independent-Set</li></ul>
</details>
<details><summar>最小全域有向木</summar>
<ul><li>Chu-Liu/Edmond</li></ul>
</details>
<details><summary>木</summary>
<ul><li>木の直径</li></ul>
<ul><li>最小全域木(プリム法)</li></ul>
<ul><li>最小全域木(クラスカル法)</li></ul>
<ul><li>最小全域木(ボルブカのアルゴリズム)</li></ul>
<ul><li>最近共通祖先(ダブリング法)</li></ul>
<ul><li>HL分解(Heavy-Light-Decomposition)</li></ul>
<ul><li>全方位木DP</li></ul>
<ul><li>木の重心分解(Centroid-Decomposition)</li></ul>
<ul><li>根付き木に変換</li></ul>
<ul><li>木DPと全方位木DP</li></ul>
</details>
<details><summary>文字列アルゴリズム</summary>
<ul><li>ローリングハッシュ</li></ul>
<ul><li>Suffix Array</li></ul>
<ul><li>LCP</li></ul>
<ul><li>KMP</li></ul>
<ul><li>Trie</li></ul>
<ul><li>Aho-Corasick</li></ul>
<ul><li>Z-algorithm</li></ul>
<ul><li>Palindromic Tree, eertree</li></ul>
<ul><li>Suffix Automaton</li></ul>
<ul><li>Manacher</li></ul>
<ul><li>Suffix Tree</li></ul>
</details>
<details><summary>ゲーム問題</summary>
<ul><li>Grundy数</li></ul>
</details>
<details><summary>その他</summary>
<ul><li>橋/関節点(LowLink)</li></ul>
<ul><li>ダブリング</li></ul>
<ul><li>包除原理</li></ul>
<ul><li>燃やす埋める問題</li></ul>
<ul><li>牛ゲー</li></ul>
<ul><li>Mo's algorithm</li></ul>
<ul><li>Offline-Dynamic-Connectivity</li></ul>
<ul><li>サイコロ(Dice)</li></ul>
<ul><li>タイマー(Timer)</li></ul>
<ul><li>乱数生成器</li></ul>
<ul><li>座標圧縮</li></ul>
<ul><li>imos法</li></ul>
<ul><li>高速Kitamasa法</li></ul>
<ul><li>高速入力</li></ul>
<ul><li>オイラーの公式</li></ul>
<ul><li>クラトフスキーの定理</li></ul>
<ul><li>打ち切りがある場合(TLEにならない)<a href="https://leetcode.com/problems/soup-servings/description/">問題のリンク</a></li></ul>
</details>
<details>WAを出したときに確認すること
<ul><li>vectorで比較していない</li></ul>
<ul><li>intで入りきれるか</li></ul>
<ul><li>オーバーフローしてないか(2乗等)</li></ul>
<ul><li>0で割ったりしていないか</li></ul>
<ul><li>先入観が招いたミスしてないか[x-y座標ミス](https://atcoder.jp/contests/abc246/tasks/abc246_e)</li></ul>
<ul><li>正負の代わるタイミングを求める問題では、そもそも正か[総和は正かの確認ミス](https://atcoder.jp/contests/abc240/tasks/abc240_f)</li></ul>
</details>
<details>考え方が分からない場合
<ul><li>状態数が少ないか</li></ul>
<ul><li>実際にシミュレーションしてみる</li></ul>
</details>
<details>
<ul><li>Luzhiledのライブラリ[リンク](https://ei1333.github.io/luzhiled/)</li></ul>
<ul><li>AtCoderライブラリ[リンク](https://github.com/atcoder/ac-library/tree/master/atcoder)</li></ul>
<ul><li>OEIS(The On-Line Encyclopedia of Integer Sequences)[リンク](https://oeis.org/)</li></ul>
<ul><li>関数表示(Demos|グラフ計算機)[リンク](https://www.desmos.com/calculator?lang=ja)</li></ul>
<ul><li>Graph表示(Graph Editor)[リンク](https://csacademy.com/app/graph_editor/)</li></ul>
</details>
</div>
</div>
<div id="contents" style="display:flex;width:60%;padding:5%;">
</div>
</div>
</div>
</body>
</html>