Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions geometry/template.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
#include <ostream>
#include <utility>
#include <vector>

using Real = double;
using Point = std::complex<Real>;
const Real EPS = 1e-8, PI = std::acos(-1);
Expand Down
1 change: 1 addition & 0 deletions graph/flow/bipartite-flow.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
#include <queue>
#include <utility>
#include <vector>

/**
* @brief Bipartite Flow(二部グラフのフロー)
*
Expand Down
1 change: 1 addition & 0 deletions graph/flow/bipartite-matching.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

#include <iostream>
#include <vector>

/**
* @brief Bipartite-Matching(二部グラフの最大マッチング)
*
Expand Down
1 change: 1 addition & 0 deletions graph/flow/dinic-capacity-scaling.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
#include <queue>
#include <type_traits>
#include <vector>

/**
* @brief Dinic Capacity Scaling(最大流)
*
Expand Down
1 change: 1 addition & 0 deletions graph/flow/dinic.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
#include <limits>
#include <queue>
#include <vector>

/**
* @brief Dinic(最大流)
*
Expand Down
1 change: 1 addition & 0 deletions graph/flow/ford-fulkerson.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#include <iostream>
#include <limits>
#include <vector>

/**
* @brief Ford Fulkerson(最大流)
*
Expand Down
1 change: 1 addition & 0 deletions graph/flow/gabow-edmonds.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <queue>
#include <utility>
#include <vector>

// https://qiita.com/Kutimoti_T/items/5b579773e0a24d650bdf

/**
Expand Down
1 change: 1 addition & 0 deletions graph/flow/maxflow-lower-bound.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#include <iostream>
#include <optional>
#include <vector>

template <typename flow_t, template <typename> class F>
struct MaxFlowLowerBound {
F<flow_t> flow;
Expand Down
1 change: 1 addition & 0 deletions graph/flow/primal-dual.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
#include <queue>
#include <utility>
#include <vector>

/**
* @brief Primal Dual(最小費用流)
*
Expand Down
1 change: 1 addition & 0 deletions graph/flow/push-relabel.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
#include <numeric>
#include <queue>
#include <vector>

class Stack {
private:
const int N, H;
Expand Down
1 change: 1 addition & 0 deletions graph/shortest-path/shortest-nonzero-path.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
#include <tuple>
#include <utility>
#include <vector>

/**
* @brief Shortest Nonzero Path(群ラベル制約付き単一始点最短路)
*/
Expand Down
1 change: 1 addition & 0 deletions graph/tree/static-top-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
#include <utility>
#include <variant>
#include <vector>

template <typename G>
struct StaticTopTree {
enum OpType { Vertex, AddVertex, AddEdge, Rake, Compress };
Expand Down
1 change: 1 addition & 0 deletions math/combinatorics/vectorize-mod-int.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <immintrin.h>

#include <cstdint>

#pragma GCC target("avx2")

struct alignas(32) VectorizeModInt {
Expand Down
1 change: 1 addition & 0 deletions math/fps/bell.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#pragma once

#include <cmath>

/**
* @brief Bell(ベル数)
*
Expand Down
1 change: 1 addition & 0 deletions math/fps/berlekamp-massey.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#pragma once

#include <iterator>

/**
* @brief Berlekamp Massey
*/
Expand Down
1 change: 1 addition & 0 deletions math/fps/coeff-of-rational-function.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#pragma once

#include <cstdint>

/**
* @brief Coeff of Rational Function
*
Expand Down
1 change: 1 addition & 0 deletions math/fps/count-subset-sum.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

#include <cmath>
#include <vector>

/**
* @brief Count Subset Sum
*/
Expand Down
1 change: 1 addition & 0 deletions math/fps/eulerian.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

#include <cmath>
#include <vector>

/**
* @brief Eulerian(オイラー数)
*/
Expand Down
1 change: 1 addition & 0 deletions math/fps/sparse-matrix.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
#include <vector>

#include "formal-power-series.hpp"

template <typename T>
using FPSGraph = std::vector<std::vector<std::pair<int, T> > >;

Expand Down
1 change: 1 addition & 0 deletions math/fps/stirling-second.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#pragma once

#include <cmath>

/**
* @brief Stirling Second(第二種スターリング数)
*/
Expand Down
1 change: 1 addition & 0 deletions math/fps/subproduct-tree.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#pragma once

#include <vector>

/**
* @brief Subproduct Tree
*/
Expand Down
1 change: 1 addition & 0 deletions string/palindromic-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <map>
#include <string>
#include <vector>

/**
* @brief Palindromic Tree(回文木)
* @see https://math314.hateblo.jp/entry/2016/12/19/005919
Expand Down
1 change: 1 addition & 0 deletions string/suffix-array.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
#include <string>
#include <utility>
#include <vector>

/**
* @brief Suffix Array(接尾辞配列)
*/
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/lazy-red-black-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
#include <vector>

#include "../../other/vector-pool.hpp"

/**
* @brief Lazy-Red-Black-Tree(遅延伝搬赤黒木)
*
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/lazy-reversible-splay-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
#include <tuple>
#include <utility>
#include <vector>

/**
* @brief Lazy-Reversible-Splay-Tree(遅延伝搬反転可能Splay木)
*/
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/lazy-weight-balanced-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
#include <vector>

#include "../../other/vector-pool.hpp"

/**
* @brief Lazy-Weight-Balanced-Tree(遅延伝搬重み平衡木)
*/
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/persistent-lazy-red-black-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <cstddef>

#include "lazy-red-black-tree.hpp"

template <typename Monoid, typename OperatorMonoid, typename F, typename G,
typename H, std::size_t FULL = 1000>
struct PersistentLazyRedBlackTree
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/persistent-lazy-weight-balanced-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <cstddef>

#include "lazy-weight-balanced-tree.hpp"

/**
* @brief Persistent-Lazy-Weight-Balanced-Tree(永続遅延伝搬重み平衡木)
*/
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/persistent-red-black-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <cstddef>

#include "red-black-tree.hpp"

template <typename Monoid, typename F, std::size_t FULL = 1000>
struct PersistentRedBlackTree : RedBlackTree<Monoid, F> {
using RBT = RedBlackTree<Monoid, F>;
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/persistent-weight-balanced-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <cstddef>

#include "weight-balanced-tree.hpp"

/**
* @brief Persistent-Weight-Balanced-Tree(永続重み平衡木)
*/
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/randomized-binary-search-tree-lazy.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
#include <string>
#include <utility>
#include <vector>

template <class Monoid, class OperatorMonoid = Monoid>
struct RandomizedBinarySearchTree {
using F = std::function<Monoid(Monoid, Monoid)>;
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/randomized-binary-search-tree-set.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <algorithm>

#include "randomized-binary-search-tree.hpp"

template <class T>
struct OrderedMultiSet : RandomizedBinarySearchTree<T> {
using RBST = RandomizedBinarySearchTree<T>;
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/randomized-binary-search-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
#include <tuple>
#include <utility>
#include <vector>

template <typename T>
class RandomizedBinarySearchTree {
using F = std::function<T(T, T)>;
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/red-black-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
#include <vector>

#include "../../other/vector-pool.hpp"

/**
* @brief Red-Black-Tree(赤黒木)
*
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/reversible-splay-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
#include <tuple>
#include <utility>
#include <vector>

/**
* @brief Reversible-Splay-Tree(反転可能Splay木)
*/
Expand Down
1 change: 1 addition & 0 deletions structure/bbst/weight-balanced-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
#include <vector>

#include "../../other/vector-pool.hpp"

/**
* @brief Weight-Balanced-Tree(重み平衡木)
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#include <cstdlib>
#include <deque>
#include <utility>

template <typename T, bool isMin>
struct ConvexHullTrickAddMonotone {
#define F first
Expand Down
1 change: 1 addition & 0 deletions structure/convex-hull-trick/dynamic-li-chao-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

#include <algorithm>
#include <utility>

/**
* @brief Dynamic-Li-Chao-Tree
*
Expand Down
1 change: 1 addition & 0 deletions structure/convex-hull-trick/li-chao-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#include <iterator>
#include <utility>
#include <vector>

template <typename T>
struct LiChaoTree {
struct Line {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

#include <algorithm>
#include <utility>

template <typename T, T x_low, T x_high, T id>
struct PersistentDynamicLiChaoTree {
struct Line {
Expand Down
1 change: 1 addition & 0 deletions structure/dynamic-tree/dynamic-tree-builder-for-edge.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <cassert>
#include <utility>
#include <vector>

template <template <typename> typename DynamicTree, typename TreeDPInfo>
struct DynamicTreeBuilderForEdge : DynamicTree<TreeDPInfo> {
private:
Expand Down
1 change: 1 addition & 0 deletions structure/dynamic-tree/dynamic-tree-builder-for-vertex.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <cassert>
#include <utility>
#include <vector>

template <template <typename> typename DynamicTree, typename TreeDPInfo>
struct DynamicTreeBuilderForVertex : DynamicTree<TreeDPInfo> {
private:
Expand Down
1 change: 1 addition & 0 deletions structure/dynamic-tree/lazy-link-cut-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <stdexcept>
#include <utility>
#include <vector>

template <typename TreeDPInfo>
struct LazyLinkCutTree {
using Lazy = typename TreeDPInfo::Lazy;
Expand Down
1 change: 1 addition & 0 deletions structure/dynamic-tree/lazy-top-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <stdexcept>
#include <utility>
#include <vector>

template <typename TreeDPInfo>
struct LazySplayTreeForDashedEdge {
using Lazy = typename TreeDPInfo::Lazy;
Expand Down
1 change: 1 addition & 0 deletions structure/dynamic-tree/link-cut-tree-for-subtree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <stdexcept>
#include <utility>
#include <vector>

template <typename TreeDPInfo>
struct LinkCutTreeForSubtree {
using Point = typename TreeDPInfo::Point;
Expand Down
1 change: 1 addition & 0 deletions structure/dynamic-tree/link-cut-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <stdexcept>
#include <utility>
#include <vector>

template <typename TreeDPInfo>
struct LinkCutTree {
using Path = typename TreeDPInfo::Path;
Expand Down
1 change: 1 addition & 0 deletions structure/dynamic-tree/top-tree.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <stdexcept>
#include <utility>
#include <vector>

template <typename TreeDPInfo>
struct SplayTreeForDashedEdge {
using Point = typename TreeDPInfo::Point;
Expand Down
1 change: 1 addition & 0 deletions structure/heap/fibonacchi-heap.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#include <cstddef>
#include <utility>
#include <vector>

/**
* @brief Fibonacchi-Heap(フィボナッチヒープ)
* @see https://www.cs.princeton.edu/~wayne/teaching/fibonacci-heap.pdf
Expand Down
1 change: 1 addition & 0 deletions structure/others/generalized-slope-trick.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
#include <limits>
#include <tuple>
#include <utility>

/**
* @brief Generalized-Slope-Trick
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
#include <cstddef>
#include <utility>
#include <vector>

template <typename T, typename T2, typename T3>
struct RangeLinearAddRangeMinSegmentTree {
private:
Expand Down
Loading
Loading