Skip to content

hidehic0/library

Repository files navigation

hidehic0's library

run unittest CodeQL Advanced

total lines GitHub code size in bytes GitHub repo size

GitHub commit week activity GitHub commit month activity GitHub commit year activity

僕が競プロで使っているライブラリです
主にpythonのライブラリです、c++のもあるけど、いかにも普通です
ファイルは、分割したのは、libsに、全文はcodeに、置いてあります


主要な機能

機能 アルゴリズム 計算量 備考
素数判定 ミラーラビン素数判定法 $O(\log N)$ $N <= 2^{64}$の場合のみ、動作します
素数列挙 エラトステネスの篩 $O(N \log \log N)$
素因数分解 √N以下の数で試し割り $O(\sqrt N)$
複数の数を素因数分解 $\sqrt N$以下の素数で試し割り $O(len(a) \times (\sqrt max(a) \log \log \sqrt max(a)))$
約数列挙 √N以下の数で試し割り $O(\sqrt N)$
1からNまでの総和 和の公式 $O(1)$ いつも忘れてしまうので関数化した

二次元配列、三次元配列を作成できます
ただのスニペットです

二分探索を関数化しただけ

ModIntのクラス
加算、減算、乗算は、$O(1)$
除算は、$O(\log MOD)$
べき乗は、$O(\log b)$

普通です

特色は、YesまたはNoを出力して、exitする関数ぐらいです

  • 座標がグリッドの中にあるか判定する関数
  • 次に行ける場所を列挙する関数
  • 部分和dp
  • ナップサックdp
  • 個数制限ナップサックの品物を分解する関数

スペルミスに気づいた
標準入力で、辺を追加する関数がある

いつ使うかも、分からないrollback機能がある

いつか使う時が来ると、信じたい

binary indexed tree
累積和よりよさそう

座標圧縮
一次元のしか揃えてない

About

競プロで使ってるライブラリ

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages