gitextract_cqk4qi75/ ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ └── feature_request.md │ └── workflows/ │ ├── sanitize.yml │ └── verify.yml ├── .gitignore ├── .gitignore_gen.sh ├── .verify-helper/ │ ├── config.toml │ ├── docs/ │ │ └── _config.yml │ ├── local.toml │ ├── sanitize.toml │ ├── timestamps.local.json.20201106 │ ├── timestamps.local.json.20210324 │ └── timestamps.remote.json ├── README.md ├── algorithm/ │ ├── knuthyao.cpp │ ├── largestrectangle.cpp │ ├── mo.cpp │ ├── monotoneminima.cpp │ ├── offlineonline.cpp │ ├── optimalbinarytree.cpp │ ├── parallelbinarysearch.cpp │ └── partialsum.cpp ├── bbst/ │ ├── pb_ds_tree.cpp │ └── rbst/ │ ├── data/ │ │ ├── array.cpp │ │ ├── dual.cpp │ │ ├── lazy.cpp │ │ └── ushi.cpp │ ├── impl/ │ │ ├── basic.cpp │ │ └── persistent.cpp │ └── rbst.cpp ├── bflow/ │ └── capacityscaling.cpp ├── clean.sh ├── combinatorics/ │ ├── bell.cpp │ ├── bernoulli.cpp │ ├── enumeration.cpp │ ├── partition.cpp │ ├── partitiontable.cpp │ ├── stirling1st.cpp │ ├── stirling2nd.cpp │ └── surjection.cpp ├── convexhulltrick/ │ ├── convexhulltrick.cpp │ ├── linecontainer.cpp │ ├── segmentcontainer.cpp │ └── withindex.cpp ├── convolution/ │ ├── arbitrarymod.cpp │ ├── bitwise/ │ │ ├── and.cpp │ │ ├── fwht.cpp │ │ ├── or.cpp │ │ └── xor.cpp │ ├── convolution2D.cpp │ ├── divisor.cpp │ ├── fastfouriertransform.cpp │ ├── garner.cpp │ ├── naive.cpp │ └── numbertheoretictransform.cpp ├── datastructure/ │ ├── BIT2D.cpp │ ├── absolutesum.cpp │ ├── binaryindexedtree.cpp │ ├── binarytrie.cpp │ ├── bitvector.cpp │ ├── cartesiantree.cpp │ ├── cumulativesum.cpp │ ├── disjointsparsetable.cpp │ ├── kdtree.cpp │ ├── pb_ds_cc_hash_table.cpp │ ├── prioritysum.cpp │ ├── quickfind.cpp │ ├── radixheap.cpp │ ├── rangeslide.cpp │ ├── rotcev.cpp │ ├── skewheap.cpp │ ├── slidingwindowaggregation.cpp │ ├── slope.cpp │ ├── sparsetable.cpp │ ├── unionfind.cpp │ ├── waveletmatrix.cpp │ └── weightedunionfind.cpp ├── docs/ │ ├── bflow/ │ │ └── capacityscaling.md │ ├── datastructure/ │ │ ├── binaryindexedtree.md │ │ └── waveletmatrix.md │ ├── graph/ │ │ └── rangetorange.md │ ├── maxflow/ │ │ ├── dinic.md │ │ ├── fordfulkerson.md │ │ ├── leastflow.md │ │ └── twocommodity.md │ ├── mincostflow/ │ │ ├── negativeedge.md │ │ └── primaldual.md │ ├── segtree/ │ │ └── basic/ │ │ └── lazy.md │ ├── string/ │ │ ├── longestcommonprefix.md │ │ └── suffixarray.md │ ├── test/ │ │ ├── aoj/ │ │ │ ├── 0438.test.md │ │ │ ├── 0563.test.md │ │ │ ├── 1549.test.md │ │ │ ├── 1595.toptree.test.md │ │ │ ├── 2290.test.md │ │ │ ├── 2313.test.md │ │ │ ├── 2636.test.md │ │ │ ├── 2667.test.md │ │ │ ├── 2679.test.md │ │ │ ├── 2711.test.md │ │ │ ├── 2725.linecontainer.test.md │ │ │ ├── 2890.test.md │ │ │ ├── 3069.test.md │ │ │ ├── 3112.test.md │ │ │ ├── 3117.test.md │ │ │ ├── 3143.test.md │ │ │ ├── DSL_2_F.test.md │ │ │ ├── DSL_2_H.test.md │ │ │ └── DSL_2_I.test.md │ │ ├── yosupo/ │ │ │ └── range_kth_smallest.test.md │ │ └── yukicoder/ │ │ ├── 1732.test.md │ │ ├── 1937.test.md │ │ ├── 3267.test.md │ │ ├── 3453.test.md │ │ └── 7107.test.md │ ├── toptree/ │ │ └── toptree.md │ └── tree/ │ ├── ahu.md │ ├── auxiliarytree.md │ ├── heavylightdecomposition.md │ ├── rerooting.md │ └── sack.md ├── formalpowerseries/ │ ├── 998244353.cpp │ ├── base.cpp │ ├── diff.cpp │ ├── div.cpp │ ├── exp.cpp │ ├── integral.cpp │ ├── inv.cpp │ ├── log.cpp │ ├── mod.cpp │ ├── pow.cpp │ ├── shift.cpp │ └── sqrt.cpp ├── geometry/ │ ├── 3D/ │ │ └── geometry3D.cpp │ ├── argsort.cpp │ ├── geometry.cpp │ └── projectilemotion.cpp ├── graph/ │ ├── arborescence_edmond.cpp │ ├── arborescence_tarjan.cpp │ ├── bellmanford.cpp │ ├── bfs.cpp │ ├── bipartitedecomposition.cpp │ ├── chromatic.cpp │ ├── cycle.cpp │ ├── dijkstra.cpp │ ├── dominatortree.cpp │ ├── dynamicconnectivity.cpp │ ├── girth.cpp │ ├── grid.cpp │ ├── independentset.cpp │ ├── kruskal.cpp │ ├── lowlink.cpp │ ├── manhattanmst.cpp │ ├── multipleeuleriantrail.cpp │ ├── nicetree.cpp │ ├── rangetorange.cpp │ ├── semikernel.cpp │ ├── stronglyconnectedcomponent.cpp │ ├── topologicalsort.cpp │ ├── triangle.cpp │ ├── twoedgeconnectedcomponents.cpp │ ├── twosatisfiability.cpp │ └── voronoiminimumspanningtree.cpp ├── heuristic/ │ ├── timer.cpp │ └── xorshift.cpp ├── includes/ │ └── formalpowerseries.h ├── io/ │ ├── precision.cpp │ ├── single.cpp │ ├── space.cpp │ ├── tuple.cpp │ └── yesno.cpp ├── leetcode/ │ └── treenode.cpp ├── linearalgebra/ │ ├── binarymatrix.cpp │ ├── matrix.cpp │ ├── squarematrix.cpp │ └── tree_theorem.cpp ├── linkcuttree/ │ ├── base.cpp │ ├── farthest.cpp │ ├── path.cpp │ └── subtree.cpp ├── matching/ │ ├── bipartite.cpp │ ├── hopcroft_karp.cpp │ └── tutte.cpp ├── math/ │ ├── affine.cpp │ ├── bostanmori.cpp │ ├── carmichael.cpp │ ├── combination.cpp │ ├── convertbase.cpp │ ├── dual.cpp │ ├── enumerate_primes.cpp │ ├── extgcd.cpp │ ├── factorize.cpp │ ├── fraction.cpp │ ├── isprime.cpp │ ├── kitamasa.cpp │ ├── linearcongruence.cpp │ ├── linearfunction.cpp │ ├── moebius.cpp │ ├── quotients.cpp │ ├── sum_of_floor.cpp │ ├── sum_of_geometric_sequence.cpp │ ├── tetrahedra.cpp │ ├── totient.cpp │ ├── totient_table.cpp │ └── twoway.cpp ├── maxflow/ │ ├── dinic.cpp │ ├── fordfulkerson.cpp │ ├── leastflow.cpp │ └── twocommodity.cpp ├── mincostflow/ │ ├── negativeedge.cpp │ └── primaldual.cpp ├── mod/ │ ├── factorial.cpp │ ├── inverse.cpp │ ├── log.cpp │ ├── mint.cpp │ ├── montmort.cpp │ ├── order.cpp │ ├── pow.cpp │ ├── rint.cpp │ ├── sqrt.cpp │ └── tetration.cpp ├── polynomial/ │ ├── berlekampmassey.cpp │ ├── hash.cpp │ ├── interpolate.cpp │ ├── lagrangeinterpolation.cpp │ ├── multieval.cpp │ ├── polynomial.cpp │ └── recursivesequence.cpp ├── segtree/ │ ├── 2d/ │ │ └── ushi.cpp │ ├── basic/ │ │ ├── dual.cpp │ │ ├── lazy.cpp │ │ └── ushi.cpp │ ├── count/ │ │ ├── dynamic_offline.cpp │ │ └── static.cpp │ ├── persistent/ │ │ └── ushi.cpp │ └── types/ │ ├── offline.cpp │ └── online.cpp ├── string/ │ ├── ahocorasick.cpp │ ├── editdistance.cpp │ ├── knuthmorrispratt.cpp │ ├── longestcommonprefix.cpp │ ├── longestcommonsubstring.cpp │ ├── manacher.cpp │ ├── morrispratt.cpp │ ├── palindromictree.cpp │ ├── parse.cpp │ ├── rectanglehash.cpp │ ├── rollinghash.cpp │ ├── run.cpp │ ├── split.cpp │ ├── suffixarray.cpp │ ├── trie.cpp │ └── zalgorithm.cpp ├── test/ │ ├── aoj/ │ │ ├── 0109.test.cpp │ │ ├── 0168.test.cpp │ │ ├── 0233.test.cpp │ │ ├── 0294.test.cpp │ │ ├── 0314.test.cpp │ │ ├── 0343.test.cpp │ │ ├── 0367.linkcuttree.test.cpp │ │ ├── 0367.test.cpp │ │ ├── 0367.toptree.test.cpp │ │ ├── 0377.test.cpp │ │ ├── 0391.test.cpp │ │ ├── 0402.test.cpp │ │ ├── 0403.test.cpp │ │ ├── 0415.test.cpp │ │ ├── 0422.test.cpp │ │ ├── 0423.test.cpp │ │ ├── 0424.test.cpp │ │ ├── 0425.test.cpp │ │ ├── 0437.test.cpp │ │ ├── 0438.test.cpp │ │ ├── 0439.test.cpp │ │ ├── 0502.test.cpp │ │ ├── 0558.test.cpp │ │ ├── 0563.test.cpp │ │ ├── 0596.test.cpp │ │ ├── 0613.test.cpp │ │ ├── 1069.test.cpp │ │ ├── 1197.test.cpp │ │ ├── 1254.test.cpp │ │ ├── 1293.test.cpp │ │ ├── 1300.test.cpp │ │ ├── 1308.test.cpp │ │ ├── 1312.test.cpp │ │ ├── 1328.test.cpp │ │ ├── 1338.test.cpp │ │ ├── 1508.test.cpp │ │ ├── 1549.test.cpp │ │ ├── 1579.test.cpp │ │ ├── 1595.linkcuttree.test.cpp │ │ ├── 1595.test.cpp │ │ ├── 1595.toptree.test.cpp │ │ ├── 1599.test.cpp │ │ ├── 1607.test.cpp │ │ ├── 1613.test.cpp │ │ ├── 1615.test.cpp │ │ ├── 1630.test.cpp │ │ ├── 1642.test.cpp │ │ ├── 2060.test.cpp │ │ ├── 2187.test.cpp │ │ ├── 2212.test.cpp │ │ ├── 2222.test.cpp │ │ ├── 2230.test.cpp │ │ ├── 2235.test.cpp │ │ ├── 2257.test.cpp │ │ ├── 2270.test.cpp │ │ ├── 2286.test.cpp │ │ ├── 2290.test.cpp │ │ ├── 2292.test.cpp │ │ ├── 2294.test.cpp │ │ ├── 2308.test.cpp │ │ ├── 2309.tarjan.test.cpp │ │ ├── 2309.test.cpp │ │ ├── 2313.test.cpp │ │ ├── 2324.test.cpp │ │ ├── 2328.test.cpp │ │ ├── 2359.test.cpp │ │ ├── 2370.test.cpp │ │ ├── 2397.test.cpp │ │ ├── 2405.test.cpp │ │ ├── 2415.knuthyao.test.cpp │ │ ├── 2415.test.cpp │ │ ├── 2432.ignore.cpp │ │ ├── 2444.test.cpp │ │ ├── 2446.test.cpp │ │ ├── 2450.linkcuttree.test.cpp │ │ ├── 2450.test.cpp │ │ ├── 2488.test.cpp │ │ ├── 2513.test.cpp │ │ ├── 2560.test.cpp │ │ ├── 2563.test.cpp │ │ ├── 2603.test.cpp │ │ ├── 2624.test.cpp │ │ ├── 2627.test.cpp │ │ ├── 2636.test.cpp │ │ ├── 2644.test.cpp │ │ ├── 2646.test.cpp │ │ ├── 2647.test.cpp │ │ ├── 2659.test.cpp │ │ ├── 2667.test.cpp │ │ ├── 2674.count.test.cpp │ │ ├── 2674.test.cpp │ │ ├── 2679.test.cpp │ │ ├── 2687.test.cpp │ │ ├── 2711.test.cpp │ │ ├── 2720.test.cpp │ │ ├── 2725.linecontainer.test.cpp │ │ ├── 2725.test.cpp │ │ ├── 2736.test.cpp │ │ ├── 2790.test.cpp │ │ ├── 2842.BIT2D.test.cpp │ │ ├── 2842.test.cpp │ │ ├── 2871.test.cpp │ │ ├── 2872.test.cpp │ │ ├── 2890.test.cpp │ │ ├── 2891.test.cpp │ │ ├── 2934.test.cpp │ │ ├── 2948.test.cpp │ │ ├── 2951.test.cpp │ │ ├── 2959.test.cpp │ │ ├── 2968.test.cpp │ │ ├── 2969.test.cpp │ │ ├── 2970.test.cpp │ │ ├── 2971.test.cpp │ │ ├── 2975.test.cpp │ │ ├── 2977.test.cpp │ │ ├── 2979.test.cpp │ │ ├── 2981.test.cpp │ │ ├── 2983.test.cpp │ │ ├── 2985.garner.test.cpp │ │ ├── 2985.test.cpp │ │ ├── 2995.test.cpp │ │ ├── 3024.test.cpp │ │ ├── 3033.test.cpp │ │ ├── 3035.test.cpp │ │ ├── 3037.test.cpp │ │ ├── 3047.test.cpp │ │ ├── 3053.test.cpp │ │ ├── 3058.test.cpp │ │ ├── 3062.test.cpp │ │ ├── 3063.test.cpp │ │ ├── 3069.test.cpp │ │ ├── 3072.test.cpp │ │ ├── 3073.test.cpp │ │ ├── 3074.test.cpp │ │ ├── 3081.test.cpp │ │ ├── 3084.test.cpp │ │ ├── 3086.test.cpp │ │ ├── 3102.test.cpp │ │ ├── 3112.test.cpp │ │ ├── 3117.test.cpp │ │ ├── 3120.test.cpp │ │ ├── 3138.test.cpp │ │ ├── 3142.test.cpp │ │ ├── 3143.test.cpp │ │ ├── 3148.test.cpp │ │ ├── 3168.test.cpp │ │ ├── 3179.test.cpp │ │ ├── 3183.test.cpp │ │ ├── 3198.test.cpp │ │ ├── 3208.test.cpp │ │ ├── 3213.test.cpp │ │ ├── 3506.test.cpp │ │ ├── 3518.test.cpp │ │ ├── ALDS1_10_C.test.cpp │ │ ├── ALDS1_14_B.knuthmorrispratt.test.cpp │ │ ├── ALDS1_14_B.test.cpp │ │ ├── ALDS1_14_C.test.cpp │ │ ├── ALDS1_15_B.test.cpp │ │ ├── ALDS1_1_C.test.cpp │ │ ├── ALDS1_5_D.test.cpp │ │ ├── ALDS1_9_C.test.cpp │ │ ├── DPL_1_E.test.cpp │ │ ├── DPL_3_B.test.cpp │ │ ├── DPL_3_C.test.cpp │ │ ├── DPL_5_A.test.cpp │ │ ├── DPL_5_B.test.cpp │ │ ├── DPL_5_C.test.cpp │ │ ├── DPL_5_D.test.cpp │ │ ├── DPL_5_E.test.cpp │ │ ├── DPL_5_F.test.cpp │ │ ├── DPL_5_G.test.cpp │ │ ├── DPL_5_H.test.cpp │ │ ├── DPL_5_I.test.cpp │ │ ├── DPL_5_J.test.cpp │ │ ├── DPL_5_K.test.cpp │ │ ├── DPL_5_L.test.cpp │ │ ├── DSL_1_A.quickfind.test.cpp │ │ ├── DSL_1_A.test.cpp │ │ ├── DSL_1_B.test.cpp │ │ ├── DSL_2_B.test.cpp │ │ ├── DSL_2_C.test.cpp │ │ ├── DSL_2_D.test.cpp │ │ ├── DSL_2_E.test.cpp │ │ ├── DSL_2_F.bbst.test.cpp │ │ ├── DSL_2_F.test.cpp │ │ ├── DSL_2_G.bbst.test.cpp │ │ ├── DSL_2_H.bbst.test.cpp │ │ ├── DSL_2_H.test.cpp │ │ ├── DSL_2_I.bbst.test.cpp │ │ ├── DSL_2_I.test.cpp │ │ ├── DSL_3_D.cartesiantree.test.cpp │ │ ├── DSL_3_D.disjointsparsetable.test.cpp │ │ ├── DSL_3_D.slidingwindowaggregation.test.cpp │ │ ├── DSL_3_D.sparsetable.test.cpp │ │ ├── DSL_3_D.test.cpp │ │ ├── GRL_1_A.test.cpp │ │ ├── GRL_1_B.test.cpp │ │ ├── GRL_2_A.test.cpp │ │ ├── GRL_2_B.tarjan.test.cpp │ │ ├── GRL_2_B.test.cpp │ │ ├── GRL_3_A.test.cpp │ │ ├── GRL_3_B.test.cpp │ │ ├── GRL_4_B.ignore.cpp │ │ ├── GRL_5_A.linkcuttree.test.cpp │ │ ├── GRL_5_A.test.cpp │ │ ├── GRL_5_C.lca.test.cpp │ │ ├── GRL_5_C.test.cpp │ │ ├── GRL_5_D.linkcuttree.test.cpp │ │ ├── GRL_5_D.test.cpp │ │ ├── GRL_5_E.linkcuttree.test.cpp │ │ ├── GRL_6_A.test.cpp │ │ ├── GRL_6_B.test.cpp │ │ ├── GRL_7_A.test.cpp │ │ ├── ITP1_11_A.test.cpp │ │ ├── ITP1_11_B.test.cpp │ │ ├── ITP1_11_C.test.cpp │ │ ├── ITP1_11_D.test.cpp │ │ ├── NTL_1_A.test.cpp │ │ ├── NTL_1_B.test.cpp │ │ ├── NTL_1_D.test.cpp │ │ ├── NTL_1_E.test.cpp │ │ ├── NTL_2_A.test.cpp │ │ ├── NTL_2_B.test.cpp │ │ ├── NTL_2_C.test.cpp │ │ ├── NTL_2_D.test.cpp │ │ ├── NTL_2_E.test.cpp │ │ ├── NTL_2_F.test.cpp │ │ └── geometry/ │ │ ├── 2334.test.cpp │ │ ├── 2448.test.cpp │ │ ├── 2454.test.cpp │ │ ├── 3049.test.cpp │ │ ├── 3056.test.cpp │ │ ├── CGL_1_A.test.cpp │ │ ├── CGL_1_B.test.cpp │ │ ├── CGL_1_C.test.cpp │ │ ├── CGL_2_A.test.cpp │ │ ├── CGL_2_B.test.cpp │ │ ├── CGL_2_C.test.cpp │ │ ├── CGL_2_D.test.cpp │ │ ├── CGL_3_A.test.cpp │ │ ├── CGL_3_B.test.cpp │ │ ├── CGL_3_C.test.cpp │ │ ├── CGL_4_A.test.cpp │ │ ├── CGL_4_B.test.cpp │ │ ├── CGL_4_C.test.cpp │ │ ├── CGL_5_A.test.cpp │ │ ├── CGL_6_A.test.cpp │ │ ├── CGL_7_A.test.cpp │ │ ├── CGL_7_D.test.cpp │ │ ├── CGL_7_E.test.cpp │ │ ├── CGL_7_F.test.cpp │ │ ├── CGL_7_G.test.cpp │ │ ├── CGL_7_H.test.cpp │ │ └── CGL_7_I.test.cpp │ ├── yosupo/ │ │ ├── assignment.test.cpp │ │ ├── associative_array.test.cpp │ │ ├── bernoulli_number.test.cpp │ │ ├── bipartitematching.test.cpp │ │ ├── bitwise_and_convolution.test.cpp │ │ ├── bitwise_xor_convolution.test.cpp │ │ ├── cartesian_tree.test.cpp │ │ ├── convolution_mod.test.cpp │ │ ├── convolution_mod_1000000007.garner.test.cpp │ │ ├── convolution_mod_1000000007.test.cpp │ │ ├── cycle_detection.test.cpp │ │ ├── discrete_logarithm_mod.test.cpp │ │ ├── dominatortree.test.cpp │ │ ├── dynamic_sequence_range_affine_range_sum.test.cpp │ │ ├── dynamic_tree_vertex_add_path_sum.test.cpp │ │ ├── dynamic_tree_vertex_add_subtree_sum.test.cpp │ │ ├── dynamic_tree_vertex_add_subtree_sum.toptree.test.cpp │ │ ├── dynamic_tree_vertex_set_path_composite.test.cpp │ │ ├── dynamic_tree_vertex_set_path_composite.toptree.test.cpp │ │ ├── enumerate_primes.test.cpp │ │ ├── enumerate_triangles.test.cpp │ │ ├── exp_of_formal_power_series.test.cpp │ │ ├── find_linear_recurrence.test.cpp │ │ ├── frequency_table_of_tree_distance.test.cpp │ │ ├── inv_of_formal_power_series.test.cpp │ │ ├── kth_root_integer.test.cpp │ │ ├── kth_term_of_linearly_recurrent_sequence.test.cpp │ │ ├── lca.linkcuttree.test.cpp │ │ ├── lca.test.cpp │ │ ├── line_add_get_min.test.cpp │ │ ├── log_of_formal_power_series.test.cpp │ │ ├── manhattanmst.test.cpp │ │ ├── many_aplusb.test.cpp │ │ ├── matrix_det.test.cpp │ │ ├── maximum_independent_set.test.cpp │ │ ├── min_cost_b_flow.test.cpp │ │ ├── montmort_number_mod.test.cpp │ │ ├── multipoint_evaluation.test.cpp │ │ ├── number_of_substrings.test.cpp │ │ ├── partition_function.test.cpp │ │ ├── persistent_queue.test.cpp │ │ ├── point_add_range_sum.test.cpp │ │ ├── point_add_rectangle_sum.test.cpp │ │ ├── point_set_range_composite.test.cpp │ │ ├── polynomial_interpolation.test.cpp │ │ ├── polynomial_taylor_shift.test.cpp │ │ ├── pow_of_formal_power_series.test.cpp │ │ ├── queue_operate_all_composite.test.cpp │ │ ├── range_affine_range_sum.test.cpp │ │ ├── range_kth_smallest.test.cpp │ │ ├── rectangle_sum.test.cpp │ │ ├── runenumerate.test.cpp │ │ ├── scc.test.cpp │ │ ├── segment_add_get_min.test.cpp │ │ ├── set_xor_min.test.cpp │ │ ├── sharp_p_subset_sum.test.cpp │ │ ├── shortest_path.test.cpp │ │ ├── sort_points_by_argument.test.cpp │ │ ├── sqrt_mod.test.cpp │ │ ├── sqrt_of_formal_power_series.test.cpp │ │ ├── static_range_frequency.test.cpp │ │ ├── static_range_inversions_query.test.cpp │ │ ├── static_range_sum.test.cpp │ │ ├── staticrmq.disjointsparsetable.test.cpp │ │ ├── staticrmq.sparsetable.test.cpp │ │ ├── stirling_number_of_the_first_kind.test.cpp │ │ ├── stirling_number_of_the_second_kind.test.cpp │ │ ├── subset_convolution.test.cpp │ │ ├── suffixarray.test.cpp │ │ ├── sum_of_floor_of_linear.test.cpp │ │ ├── tetration_mod.test.cpp │ │ ├── tree_decomposition_width_2.test.cpp │ │ ├── tree_diameter.test.cpp │ │ ├── two_edge_connected_components.test.cpp │ │ ├── two_sat.test.cpp │ │ ├── unionfind.test.cpp │ │ ├── vertex_add_path_sum.test.cpp │ │ ├── vertex_add_subtree_sum.test.cpp │ │ └── zalgorithm.test.cpp │ └── yukicoder/ │ ├── 0022.test.cpp │ ├── 0104.test.cpp │ ├── 0143.test.cpp │ ├── 0206.test.cpp │ ├── 0222.test.cpp │ ├── 0399.test.cpp │ ├── 0444.test.cpp │ ├── 0472.test.cpp │ ├── 0771.test.cpp │ ├── 0831.test.cpp │ ├── 1013.test.cpp │ ├── 1504.test.cpp │ ├── 1580.test.cpp │ ├── 1665.test.cpp │ ├── 1732.test.cpp │ ├── 1923.test.cpp │ ├── 1937.test.cpp │ ├── 1948.test.cpp │ ├── 1950.test.cpp │ ├── 1973.test.cpp │ ├── 2063.test.cpp │ ├── 2085.test.cpp │ ├── 2113.test.cpp │ ├── 2125.test.cpp │ ├── 2147.test.cpp │ ├── 2520.test.cpp │ ├── 2587.test.cpp │ ├── 2600.test.cpp │ ├── 2744.test.cpp │ ├── 2772.test.cpp │ ├── 3211.test.cpp │ ├── 3227.test.cpp │ ├── 3267.test.cpp │ ├── 3277.test.cpp │ ├── 3354.test.cpp │ ├── 3405.test.cpp │ ├── 3407.test.cpp │ ├── 3453.test.cpp │ ├── 3592.test.cpp │ ├── 3912.test.cpp │ ├── 3961.test.cpp │ ├── 4072.test.cpp │ ├── 4117.test.cpp │ ├── 4271.avx2.test.cpp │ ├── 4271.test.cpp │ ├── 4387.test.cpp │ ├── 4474.test.cpp │ ├── 4569.test.cpp │ ├── 4706.test.cpp │ ├── 4778.test.cpp │ ├── 4852.test.cpp │ ├── 4862.test.cpp │ ├── 4872.test.cpp │ ├── 4918.test.cpp │ ├── 4941.test.cpp │ ├── 5011.test.cpp │ ├── 5025.test.cpp │ ├── 5061.test.cpp │ ├── 5223.test.cpp │ ├── 5633.test.cpp │ ├── 6680.test.cpp │ ├── 7107.test.cpp │ └── 9158.test.cpp ├── tools/ │ ├── all_permutations.cpp │ ├── avx2.cpp │ ├── bigint.cpp │ ├── cc_hash.cpp │ ├── chminmax.cpp │ ├── debug.cpp │ ├── defaultdict.cpp │ ├── dice.cpp │ ├── drop.cpp │ ├── fastio.cpp │ ├── fixpoint.cpp │ ├── gridbfs.cpp │ ├── int128.cpp │ ├── iskado.cpp │ └── trio.cpp ├── toptree/ │ ├── base.cpp │ ├── distancesum.cpp │ ├── farthest.cpp │ ├── steiner.cpp │ └── toptree.cpp ├── tree/ │ ├── ahu.cpp │ ├── auxiliarytree.cpp │ ├── centroid.cpp │ ├── construct_from_distances_to_farthest_vertex.cpp │ ├── diameterforedge.cpp │ ├── diameterforvertex.cpp │ ├── eulertourforbfs.cpp │ ├── eulertourforedge.cpp │ ├── eulertourforvertex.cpp │ ├── heavylightdecomposition.cpp │ ├── lca.cpp │ ├── levelancestor.cpp │ ├── lowestcommonancestor.cpp │ ├── mo_on_tree.cpp │ ├── rerooting.cpp │ └── sack.cpp └── vector/ ├── compress.cpp ├── fusion.cpp ├── identity.cpp ├── inversion.cpp ├── multi.cpp ├── near.cpp ├── powers.cpp ├── reversed.cpp ├── runlength.cpp ├── sorted.cpp └── zip.cpp