XOR線形基の基礎とアルゴリズム

XOR線形基(Linear Basis)は、与えられた数値列 A = {a1, a2, ..., an} に対して、その要素のXOR演算によって生成可能なすべての値を表現できる、最小サイズの集合 B を指します。線形基を用いることで、XORに関する複雑なクエリを効率的に処理できます。 主な性質 B の任意の要素を組み合わせたXOR和は0になりません。 集合 B のサイズは、最大値を V としたと ...

6月17日 18:56 投稿

トライ木による文字列検索と最大 XOR ペアの解法

トライ木の基本構造と実装 トライ木(Trie)は、文字列や数値の検索・格納に特化した木構造データ構造です。各ノードが複数の子ノードを持ち、文字やビットによってパスを分岐させることで効率的な検索を実現します。 まずは、英文字からなる文字列を扱う基本的なトライ木の実装を見てみましょう。 #include <bits/stdc++.h> using namespace std; const int MAX ...

5月15日 04:36 投稿