多倍長演算の活用②
多倍長演算の活用② Python の多倍長演算を活用する方法の第 $2$ 弾です。 前回の記事 では、多倍長整数の各bitをフラグと見て処理する方法を説明しました。この記事では、いよいよ整数...
17 search resultsShowing 1~17 results
You need to log-in
多倍長演算の活用② Python の多倍長演算を活用する方法の第 $2$ 弾です。 前回の記事 では、多倍長整数の各bitをフラグと見て処理する方法を説明しました。この記事では、いよいよ整数...
多倍長演算の活用 Python の多倍長演算を活用して、処理の簡潔化・高速化を行う方法について書きます。 本記事では整数の各bitをフラグとみてbit演算する処理について、 次の記事 では整数...
この記事は? 桁 DP って実装のとき頭がこんがらがりませんか?私はこんがらがります。この記事では、桁 DP の実装をなるべく定型化して、実装の際にスムーズに書くことを目的としています。 桁 D...
この記事は? 複数の素数をまとめて判定することで素因数分解を効率的に行う方法を紹介します。 はじめに 素因数分解を暗算・手計算で高速に行う方法として、各素数について割り切れるかを判定する方法が知...
$\require{AMScd}$ 有理数 mod p 競技プログラミングでよく聞かれる、有理数を$\bmod 998244353$ などで出力させる問題について、数学的な解釈をします。 「有理...
この記事は? 二項係数 mod 合成数を列挙します。素因数ごとの結果を並列処理することで高速化する方法を紹介します。 並列処理をする部分以外は suisenさんの記事 と同様です。 suisen...
この記事の目的 オンライン畳み込み(Relaxed Convolution 1 または Relaxed Multiplication 2 などとも呼ばれるようです)を $O(N(\log N)^...
ポテンシャル付き Union Find 1 と呼ばれるものの一般化について、いろんなパターンを網羅しようとすると混乱したので、考えた結果をメモします。 前提 $R$ を可換整域 2 、その商体を...
添え字ガチャはお得意ですか? 私は苦手です。得意な方はこの記事のありがたみがあまりないかもしれません 1。 この記事は? 添え字ガチャを回避するためのテクを紹介します。 実装・考え方の工夫という...
この記事でやること Pythonでトポソを使って全方位DPをするのが目標です。最初にこの記事での実装方針を書いておきます。 実装方法 トポソを使う 抽象化 逆元がない場合にも対応 左右累積和は...
LR 法 この呼び方は一般的な用語ではないですが、ある場所でよく使っていたのでここでもそのまま使っています 1 。 やりたいこと $N$ 要素からなる集合 $\lbrace 0,\ \cdots...
3^n DP でループ回数を半分にするテク 「$3^n$ $\mathrm{DP}$ でループ回数を半分にするテク」、略して「半分にするテク」について書きます。 半分って何? $3^n$ $\m...
はじめに 突然ですが、あなたは多重ループは書けますか? ???:「書けますー!」 test.py cnt = 0 for i0 in range(3): for i1 in range(3): ...
回転のいらない平衡二分木を実装したい Python では組み込み関数に平衡二分木を扱えるものがないので自作する必要があります。よくある平衡二分木では、平衡を保つために「回転」の操作をしないといけ...
素因数分解を O(N^(1/4)) でする 自然数 $n$ を $O(n^{\frac{1}{4}})$ で素因数分解します。1 ナイーブな実装 自然数 $n$ を素因数分解するとき、ナイーブな...
非再帰 Euler Tour を書く Euler Tour に限らなくてもいいんですが、 DFS を非再帰で書くと若干大変ですよね。それの私なりの書き方です。先に方針を書くとこんな感じです。 P...
非再帰 BFS Python で非再帰 BFS を書きます。ついでにトポロジカルソート(トポソ)もできます。トポロジカルソートを知らない人は適当に ググって ください。 トポロジカルソートを...
17 search resultsShowing 1~17 results
Qiita is a knowledge sharing service for engineers.