mirror of
https://github.com/TheAlgorithms/C-Plus-Plus.git
synced 2026-03-31 01:02:46 +08:00
Documentation for 6e9f3fd788
This commit is contained in:
242
d5/d83/lcm__sum_8cpp.html
Normal file
242
d5/d83/lcm__sum_8cpp.html
Normal file
@@ -0,0 +1,242 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.20"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>Algorithms_in_C++: math/lcm_sum.cpp File Reference</title>
|
||||
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="../../jquery.js"></script>
|
||||
<script type="text/javascript" src="../../dynsections.js"></script>
|
||||
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="../../resize.js"></script>
|
||||
<script type="text/javascript" src="../../navtreedata.js"></script>
|
||||
<script type="text/javascript" src="../../navtree.js"></script>
|
||||
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="../../search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="../../search/search.js"></script>
|
||||
<script type="text/x-mathjax-config">
|
||||
MathJax.Hub.Config({
|
||||
extensions: ["tex2jax.js", "TeX/AMSmath.js", "TeX/AMSsymbols.js"],
|
||||
jax: ["input/TeX","output/HTML-CSS"],
|
||||
});
|
||||
</script>
|
||||
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML/MathJax.js"></script>
|
||||
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">Algorithms_in_C++
|
||||
 <span id="projectnumber">1.0.0</span>
|
||||
</div>
|
||||
<div id="projectbrief">Set of algorithms implemented in C++.</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.20 -->
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
|
||||
/* @license-end */
|
||||
</script>
|
||||
<script type="text/javascript" src="../../menudata.js"></script>
|
||||
<script type="text/javascript" src="../../menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(function() {
|
||||
initMenu('../../',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
/* @license-end */</script>
|
||||
<div id="main-nav"></div>
|
||||
</div><!-- top -->
|
||||
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
||||
<div id="nav-tree">
|
||||
<div id="nav-tree-contents">
|
||||
<div id="nav-sync" class="sync"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="splitbar" style="-moz-user-select:none;"
|
||||
class="ui-resizable-handle">
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
||||
$(document).ready(function(){initNavTree('d5/d83/lcm__sum_8cpp.html','../../'); initResizable(); });
|
||||
/* @license-end */
|
||||
</script>
|
||||
<div id="doc-content">
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#namespaces">Namespaces</a> |
|
||||
<a href="#func-members">Functions</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">lcm_sum.cpp File Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>An algorithm to calculate the sum of LCM: \(\mathrm{LCM}(1,n) + \mathrm{LCM}(2,n) + \ldots + \mathrm{LCM}(n,n)\).
|
||||
<a href="#details">More...</a></p>
|
||||
<div class="textblock"><code>#include <iostream></code><br />
|
||||
<code>#include <cassert></code><br />
|
||||
<code>#include <vector></code><br />
|
||||
</div><div class="textblock"><div class="dynheader">
|
||||
Include dependency graph for lcm_sum.cpp:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d1/d52/lcm__sum_8cpp__incl.svg" width="256" height="112"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
</div><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
|
||||
Namespaces</h2></td></tr>
|
||||
<tr class="memitem:dd/d47/namespacemath"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d47/namespacemath.html">math</a></td></tr>
|
||||
<tr class="memdesc:dd/d47/namespacemath"><td class="mdescLeft"> </td><td class="mdescRight">for <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html" title="STL class.">std::vector</a> <br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
|
||||
Functions</h2></td></tr>
|
||||
<tr class="memitem:a04065193d190d605e1f0d0d93a87e244"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a> (const uint16_t &num)</td></tr>
|
||||
<tr class="separator:a04065193d190d605e1f0d0d93a87e244"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aa8dca7b867074164d5f45b0f3851269d"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/d83/lcm__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a> ()</td></tr>
|
||||
<tr class="separator:aa8dca7b867074164d5f45b0f3851269d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/d83/lcm__sum_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
|
||||
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft"> </td><td class="mdescRight">Main function. <a href="../../d5/d83/lcm__sum_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">More...</a><br /></td></tr>
|
||||
<tr class="separator:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>An algorithm to calculate the sum of LCM: \(\mathrm{LCM}(1,n) + \mathrm{LCM}(2,n) + \ldots + \mathrm{LCM}(n,n)\). </p>
|
||||
<p>An algorithm to calculate the sum of LCM: \(\mathrm{LCM}(1,n) + \mathrm{LCM}(2,n) + \ldots + \mathrm{LCM}(n,n)\) where \(\mathrm{LCM}(i,n)\) denotes the Least Common Multiple of the integers i and n. For n greater than or equal to 1. The value of the sum is calculated by formula: </p><p class="formulaDsp">
|
||||
\[ \sum\mathrm{LCM}(i, n) = \frac{1}{2} \left[\left(\sum (d * \mathrm{ETF}(d)) + 1\right) * n\right] \]
|
||||
</p>
|
||||
<p> where \mathrm{ETF}(i) represents Euler totient function of i. </p><dl class="section author"><dt>Author</dt><dd><a href="https://github.com/chestamittal">Chesta Mittal</a> </dd></dl>
|
||||
</div><h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="ae66f6b31b5ad750f1fe042a706a4e3d4"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae66f6b31b5ad750f1fe042a706a4e3d4">◆ </a></span>main()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">int main </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">void </td>
|
||||
<td class="paramname"></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Main function. </p>
|
||||
<dl class="section return"><dt>Returns</dt><dd>0 on exit </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  {</div>
|
||||
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <a class="code" href="../../d5/d83/lcm__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// execute the tests</span></div>
|
||||
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d5/d83/lcm__sum_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="aa8dca7b867074164d5f45b0f3851269d"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aa8dca7b867074164d5f45b0f3851269d">◆ </a></span>test()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">static void test </td>
|
||||
<td>(</td>
|
||||
<td class="paramname"></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">static</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Function for testing lcmSum function. test cases and assert statement. </p><dl class="section return"><dt>Returns</dt><dd><code>void</code> </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  {</div>
|
||||
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  uint64_t n = 2;</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  uint64_t <a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817">test_1</a> = <a class="code" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a>(n);</div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  assert(<a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817">test_1</a> == 4);</div>
|
||||
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Passed Test 1!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  </div>
|
||||
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  n = 5;</div>
|
||||
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  uint64_t <a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d">test_2</a> = <a class="code" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a>(n);</div>
|
||||
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  assert(<a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d">test_2</a> == 55);</div>
|
||||
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Passed Test 2!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  </div>
|
||||
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  n = 10;</div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  uint64_t <a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a">test_3</a> = <a class="code" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a>(n);</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  assert(<a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a">test_3</a> == 320);</div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Passed Test 3!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  </div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  n = 11;</div>
|
||||
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  uint64_t test_4 = <a class="code" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a>(n);</div>
|
||||
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  assert(test_4 == 616);</div>
|
||||
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Passed Test 4!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  </div>
|
||||
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  n = 15;</div>
|
||||
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  uint64_t test_5 = <a class="code" href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a>(n);</div>
|
||||
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  assert(test_5 == 1110);</div>
|
||||
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"Passed Test 5!"</span> << <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a>;</div>
|
||||
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="../../d5/d83/lcm__sum_8cpp_aa8dca7b867074164d5f45b0f3851269d_cgraph.svg" width="100%" height="600"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- contents -->
|
||||
</div><!-- doc-content -->
|
||||
<div class="ttc" id="anamespacemath_html_a04065193d190d605e1f0d0d93a87e244"><div class="ttname"><a href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244">math::lcmSum</a></div><div class="ttdeci">uint64_t lcmSum(const uint16_t &num)</div><div class="ttdef"><b>Definition:</b> lcm_sum.cpp:28</div></div>
|
||||
<div class="ttc" id="aheavy__light__decomposition_8cpp_html_af31ec5409537703d9c8a47350386b32a"><div class="ttname"><a href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a">test_3</a></div><div class="ttdeci">static void test_3()</div><div class="ttdef"><b>Definition:</b> heavy_light_decomposition.cpp:592</div></div>
|
||||
<div class="ttc" id="aheavy__light__decomposition_8cpp_html_a458410412185a5f09199deaff7157a8d"><div class="ttname"><a href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d">test_2</a></div><div class="ttdeci">static void test_2()</div><div class="ttdef"><b>Definition:</b> heavy_light_decomposition.cpp:549</div></div>
|
||||
<div class="ttc" id="alcm__sum_8cpp_html_aa8dca7b867074164d5f45b0f3851269d"><div class="ttname"><a href="../../d5/d83/lcm__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a></div><div class="ttdeci">static void test()</div><div class="ttdef"><b>Definition:</b> lcm_sum.cpp:65</div></div>
|
||||
<div class="ttc" id="abasic_ostream_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a></div></div>
|
||||
<div class="ttc" id="aheavy__light__decomposition_8cpp_html_a34b8683a2b429de5cce57e6d733ec817"><div class="ttname"><a href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817">test_1</a></div><div class="ttdeci">static void test_1()</div><div class="ttdef"><b>Definition:</b> heavy_light_decomposition.cpp:505</div></div>
|
||||
<div class="ttc" id="aendl_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/io/manip/endl.html">std::endl</a></div><div class="ttdeci">T endl(T... args)</div></div>
|
||||
<!-- start footer part -->
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="../../dir_296d53ceaeaa7e099814a6def439fe8a.html">math</a></li><li class="navelem"><a class="el" href="../../d5/d83/lcm__sum_8cpp.html">lcm_sum.cpp</a></li>
|
||||
<li class="footer">Generated by <a href="http://www.doxygen.org/index.html"><img class="footer" src="../../doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.8.20 </li>
|
||||
</ul>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
6
d5/d83/lcm__sum_8cpp.js
Normal file
6
d5/d83/lcm__sum_8cpp.js
Normal file
@@ -0,0 +1,6 @@
|
||||
var lcm__sum_8cpp =
|
||||
[
|
||||
[ "lcmSum", "d5/d83/lcm__sum_8cpp.html#a04065193d190d605e1f0d0d93a87e244", null ],
|
||||
[ "main", "d5/d83/lcm__sum_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4", null ],
|
||||
[ "test", "d5/d83/lcm__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d", null ]
|
||||
];
|
||||
@@ -0,0 +1,26 @@
|
||||
<map id="test" name="test">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,250,49,277"/>
|
||||
<area shape="rect" id="node2" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="115,149,187,175"/>
|
||||
<area shape="rect" id="node3" href="$dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" title=" " alt="" coords="97,199,204,226"/>
|
||||
<area shape="rect" id="node4" href="$d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" title=" " alt="" coords="121,301,180,327"/>
|
||||
<area shape="rect" id="node23" href="$d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" title=" " alt="" coords="121,250,180,277"/>
|
||||
<area shape="rect" id="node24" href="$d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" title=" " alt="" coords="121,383,180,410"/>
|
||||
<area shape="rect" id="node5" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" title="Adds an undirected edge from node u to node v in the tree." alt="" coords="252,286,399,342"/>
|
||||
<area shape="rect" id="node6" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="447,301,601,327"/>
|
||||
<area shape="rect" id="node7" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" title="This function must be called after the tree adjacency list and node values are populated The function..." alt="" coords="252,518,399,574"/>
|
||||
<area shape="rect" id="node15" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" title="This function returns the sum of node values in the simple path from from node_1 to node_2." alt="" coords="252,598,399,654"/>
|
||||
<area shape="rect" id="node19" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" title="Set the values for all the nodes." alt="" coords="252,75,399,131"/>
|
||||
<area shape="rect" id="node20" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="466,122,582,149"/>
|
||||
<area shape="rect" id="node21" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" title="This function updates the value at node with val." alt="" coords="252,206,399,262"/>
|
||||
<area shape="rect" id="node8" href="$d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" title="Function that specifies the type of operation involved when segments are combined." alt="" coords="451,431,597,487"/>
|
||||
<area shape="rect" id="node9" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" title="Utility function to assign heavy child to each node (-1 for a leaf node)" alt="" coords="451,511,597,567"/>
|
||||
<area shape="rect" id="node10" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" title="Utility function to lable the nodes so that heavy chains have a contigous lable." alt="" coords="451,591,597,647"/>
|
||||
<area shape="rect" id="node11" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" title="Utility function to assign highest parent that can be reached though heavy chains." alt="" coords="451,671,597,727"/>
|
||||
<area shape="rect" id="node12" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" title="This function must be called after the tree adjacency list and node values are populated The function..." alt="" coords="451,351,597,407"/>
|
||||
<area shape="rect" id="node13" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" title="Utility function to populate the t_par vector." alt="" coords="649,391,796,447"/>
|
||||
<area shape="rect" id="node14" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" title="Utility function to compute sub-tree sizes." alt="" coords="649,311,796,367"/>
|
||||
<area shape="rect" id="node16" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" title="Utility function to break down a path query into two chain queries." alt="" coords="451,751,597,807"/>
|
||||
<area shape="rect" id="node17" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" title="The function returns the least common ancestor of two nodes." alt="" coords="451,831,597,887"/>
|
||||
<area shape="rect" id="node18" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store..." alt="" coords="649,831,796,887"/>
|
||||
<area shape="rect" id="node22" href="$d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" title="Update the value at a node." alt="" coords="451,206,597,262"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
667bca0f8cecb1055658de31467871af
|
||||
@@ -0,0 +1,583 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
|
||||
-->
|
||||
<!-- Title: test Pages: 1 -->
|
||||
<!--zoomable 670 -->
|
||||
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
|
||||
<style type="text/css"><![CDATA[
|
||||
.edge:hover path { stroke: red; }
|
||||
.edge:hover polygon { stroke: red; fill: red; }
|
||||
]]></style>
|
||||
<script type="text/javascript"><![CDATA[
|
||||
var edges = document.getElementsByTagName('g');
|
||||
if (edges && edges.length) {
|
||||
for (var i=0;i<edges.length;i++) {
|
||||
if (edges[i].id.substr(0,4)=='edge') {
|
||||
edges[i].setAttribute('class','edge');
|
||||
}
|
||||
}
|
||||
}
|
||||
]]></script>
|
||||
<defs>
|
||||
<circle id="rim" cx="0" cy="0" r="7"/>
|
||||
<circle id="rim2" cx="0" cy="0" r="3.5"/>
|
||||
<g id="zoomPlus">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="zoomMin">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="dirArrow">
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="resetDef">
|
||||
<use xlink:href="#rim2" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
|
||||
</use>
|
||||
</g>
|
||||
</defs>
|
||||
|
||||
<script type="text/javascript">
|
||||
var viewWidth = 601;
|
||||
var viewHeight = 670;
|
||||
var sectionId = 'dynsection-2';
|
||||
</script>
|
||||
<script xlink:href="../../svgpan.js"/>
|
||||
<svg id="graph" class="graph">
|
||||
<g id="viewport">
|
||||
<title>test</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-665.58 597,-665.58 597,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-458.5 0,-477.5 33,-477.5 33,-458.5 0,-458.5"/>
|
||||
<text text-anchor="middle" x="16.5" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="82,-534.5 82,-553.5 136,-553.5 136,-534.5 82,-534.5"/>
|
||||
<text text-anchor="middle" x="109" y="-541.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M24.26,-477.51C33.33,-489.73 50.45,-511.05 69,-525 71.05,-526.54 73.25,-528.01 75.52,-529.4"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="74.02,-532.57 84.47,-534.34 77.4,-526.44 74.02,-532.57"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="69,-496.5 69,-515.5 149,-515.5 149,-496.5 69,-496.5"/>
|
||||
<text text-anchor="middle" x="109" y="-503.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::lcmSum</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-474.62C44.95,-479.53 61.28,-486.38 75.7,-492.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="74.72,-495.82 85.29,-496.47 77.43,-489.37 74.72,-495.82"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-420.5 87,-439.5 131,-439.5 131,-420.5 87,-420.5"/>
|
||||
<text text-anchor="middle" x="109" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node1->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-461.38C45.48,-456.25 62.77,-448.99 77.64,-442.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="79.12,-445.92 86.99,-438.82 76.41,-439.47 79.12,-445.92"/>
|
||||
</g>
|
||||
<!-- Node23 -->
|
||||
<g id="node23" class="node">
|
||||
<title>Node23</title>
|
||||
<g id="a_node23"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-458.5 87,-477.5 131,-477.5 131,-458.5 87,-458.5"/>
|
||||
<text text-anchor="middle" x="109" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node23 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node1->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-468C45.24,-468 62.11,-468 76.79,-468"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="76.99,-471.5 86.99,-468 76.99,-464.5 76.99,-471.5"/>
|
||||
</g>
|
||||
<!-- Node24 -->
|
||||
<g id="node24" class="node">
|
||||
<title>Node24</title>
|
||||
<g id="a_node24"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-358.5 87,-377.5 131,-377.5 131,-358.5 87,-358.5"/>
|
||||
<text text-anchor="middle" x="109" y="-365.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node24 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node1->Node24</title>
|
||||
<path fill="none" stroke="midnightblue" d="M26.24,-458.31C36.48,-446.97 53.96,-427.61 69,-411 76.73,-402.46 85.33,-392.97 92.49,-385.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="95.19,-387.32 99.32,-377.56 90.01,-382.61 95.19,-387.32"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" target="_top" xlink:title="Adds an undirected edge from node u to node v in the tree.">
|
||||
<polygon fill="white" stroke="black" points="185,-409.5 185,-450.5 295,-450.5 295,-409.5 185,-409.5"/>
|
||||
<text text-anchor="start" x="193" y="-438.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="240" y="-416.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::add_edge</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node4->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.01,-430C143.02,-430 158.79,-430 174.55,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="174.87,-433.5 184.87,-430 174.87,-426.5 174.87,-433.5"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="331,-420.5 331,-439.5 447,-439.5 447,-420.5 331,-420.5"/>
|
||||
<text text-anchor="middle" x="389" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node6 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node4->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M128.2,-420.44C143.03,-413.21 164.76,-403.9 185,-400 233.01,-390.75 246.7,-392.4 295,-400 297.91,-400.46 325.03,-409.25 349.23,-417.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="348.41,-420.61 359,-420.41 350.6,-413.96 348.41,-420.61"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="185,-235.5 185,-276.5 295,-276.5 295,-235.5 185,-235.5"/>
|
||||
<text text-anchor="start" x="193" y="-264.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-253.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="240" y="-242.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node4->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M119.37,-420.42C127.53,-411.92 139.5,-399.01 149,-387 175.61,-353.37 203.08,-312.28 220.56,-285.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="223.64,-286.88 226.09,-276.58 217.75,-283.1 223.64,-286.88"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" target="_top" xlink:title="This function returns the sum of node values in the simple path from from node_1 to node_2.">
|
||||
<polygon fill="white" stroke="black" points="185,-175.5 185,-216.5 295,-216.5 295,-175.5 185,-175.5"/>
|
||||
<text text-anchor="start" x="193" y="-204.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-193.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="240" y="-182.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node15 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node4->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M121.66,-420.24C130.49,-412.21 142.23,-400.06 149,-387 182.75,-321.91 141.1,-284.73 185,-226 185.56,-225.25 186.15,-224.51 186.76,-223.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="189.32,-226.18 194.03,-216.69 184.43,-221.18 189.32,-226.18"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" target="_top" xlink:title="Set the values for all the nodes.">
|
||||
<polygon fill="white" stroke="black" points="185,-567.5 185,-608.5 295,-608.5 295,-567.5 185,-567.5"/>
|
||||
<text text-anchor="start" x="193" y="-596.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-585.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="240" y="-574.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::set_node_val</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node19 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node4->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.04,-436.65C137.52,-439.57 144.2,-443.59 149,-449 181.45,-485.6 154.84,-514.49 185,-553 187.1,-555.68 189.47,-558.22 192.01,-560.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="190.14,-563.62 200.05,-567.35 194.63,-558.25 190.14,-563.62"/>
|
||||
</g>
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="345.5,-554.5 345.5,-573.5 432.5,-573.5 432.5,-554.5 345.5,-554.5"/>
|
||||
<text text-anchor="middle" x="389" y="-561.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node20 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node4->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.02,-437.23C137.36,-440.15 143.95,-444.03 149,-449 174.22,-473.82 157,-498.38 185,-520 208.08,-537.82 283.01,-550.68 335.07,-557.74"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="334.78,-561.24 345.16,-559.08 335.7,-554.3 334.78,-561.24"/>
|
||||
</g>
|
||||
<!-- Node21 -->
|
||||
<g id="node21" class="node">
|
||||
<title>Node21</title>
|
||||
<g id="a_node21"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" target="_top" xlink:title="This function updates the value at node with val.">
|
||||
<polygon fill="white" stroke="black" points="185,-469.5 185,-510.5 295,-510.5 295,-469.5 185,-469.5"/>
|
||||
<text text-anchor="start" x="193" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="240" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node21 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node4->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M130.44,-439.51C145.34,-446.44 166.26,-456.17 185.76,-465.24"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.34,-468.44 194.89,-469.48 187.29,-462.09 184.34,-468.44"/>
|
||||
</g>
|
||||
<!-- Node5->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node5->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M295.32,-430C303.58,-430 312.18,-430 320.67,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="320.95,-433.5 330.95,-430 320.95,-426.5 320.95,-433.5"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" target="_top" xlink:title="Function that specifies the type of operation involved when segments are combined.">
|
||||
<polygon fill="white" stroke="black" points="334,-300.5 334,-341.5 444,-341.5 444,-300.5 334,-300.5"/>
|
||||
<text text-anchor="start" x="342" y="-329.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-318.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-307.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::combine</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node8 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node7->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M287.51,-276.57C301.66,-282.82 317.35,-289.76 332.05,-296.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="330.98,-299.61 341.54,-300.46 333.81,-293.21 330.98,-299.61"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" target="_top" xlink:title="Utility function to assign heavy child to each node (-1 for a leaf node)">
|
||||
<polygon fill="white" stroke="black" points="334,-240.5 334,-281.5 444,-281.5 444,-240.5 334,-240.5"/>
|
||||
<text text-anchor="start" x="342" y="-269.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-258.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_hc</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node9 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node7->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M295.32,-257.85C304.57,-258.16 314.25,-258.49 323.73,-258.81"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="323.79,-262.32 333.9,-259.16 324.03,-255.32 323.79,-262.32"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" target="_top" xlink:title="Utility function to lable the nodes so that heavy chains have a contigous lable.">
|
||||
<polygon fill="white" stroke="black" points="334,-180.5 334,-221.5 444,-221.5 444,-180.5 334,-180.5"/>
|
||||
<text text-anchor="start" x="342" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_labels</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node10 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node7->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M295.32,-235.68C304.77,-232.14 314.67,-228.44 324.34,-224.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="325.76,-228.02 333.9,-221.24 323.31,-221.47 325.76,-228.02"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" target="_top" xlink:title="Utility function to assign highest parent that can be reached though heavy chains.">
|
||||
<polygon fill="white" stroke="black" points="334,-120.5 334,-161.5 444,-161.5 444,-120.5 334,-120.5"/>
|
||||
<text text-anchor="start" x="342" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_par</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node11 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node7->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M283.1,-235.34C287.33,-232.48 291.39,-229.36 295,-226 316.39,-206.1 309.38,-190.65 331,-171 332.28,-169.84 333.61,-168.7 334.99,-167.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="337.19,-170.33 343.25,-161.65 333.09,-164.65 337.19,-170.33"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="334,-360.5 334,-401.5 444,-401.5 444,-360.5 334,-360.5"/>
|
||||
<text text-anchor="start" x="342" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-378.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node12 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node7->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M277.9,-276.65C283.99,-280.95 289.95,-285.78 295,-291 316.61,-313.37 308.4,-329.63 331,-351 332.12,-352.06 333.28,-353.09 334.48,-354.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="332.72,-357.14 342.83,-360.31 336.9,-351.53 332.72,-357.14"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" target="_top" xlink:title="Utility function to populate the t_par vector.">
|
||||
<polygon fill="white" stroke="black" points="483,-330.5 483,-371.5 593,-371.5 593,-330.5 483,-330.5"/>
|
||||
<text text-anchor="start" x="491" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="491" y="-348.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="538" y="-337.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node13 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node12->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M444.32,-369.91C453.67,-368.01 463.46,-366.01 473.03,-364.05"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="473.81,-367.47 482.9,-362.04 472.41,-360.61 473.81,-367.47"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" target="_top" xlink:title="Utility function to compute sub-tree sizes.">
|
||||
<polygon fill="white" stroke="black" points="483,-390.5 483,-431.5 593,-431.5 593,-390.5 483,-390.5"/>
|
||||
<text text-anchor="start" x="491" y="-419.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="491" y="-408.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="538" y="-397.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node14 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node12->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M444.32,-392.09C453.67,-393.99 463.46,-395.99 473.03,-397.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="472.41,-401.39 482.9,-399.96 473.81,-394.53 472.41,-401.39"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" target="_top" xlink:title="Utility function to break down a path query into two chain queries.">
|
||||
<polygon fill="white" stroke="black" points="334,-60.5 334,-101.5 444,-101.5 444,-60.5 334,-60.5"/>
|
||||
<text text-anchor="start" x="342" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-67.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::chain_query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node15->Node16 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node15->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M259.65,-175.44C276.98,-157.1 304.08,-130.25 331,-111 332.88,-109.65 334.84,-108.33 336.84,-107.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="339.12,-109.73 345.81,-101.52 335.46,-103.77 339.12,-109.73"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" target="_top" xlink:title="The function returns the least common ancestor of two nodes.">
|
||||
<polygon fill="white" stroke="black" points="334,-0.5 334,-41.5 444,-41.5 444,-0.5 334,-0.5"/>
|
||||
<text text-anchor="start" x="342" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node15->Node17 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node15->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M249.54,-175.37C263.02,-144.9 291.76,-87.55 331,-51 332.27,-49.82 333.59,-48.67 334.95,-47.56"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="337.16,-50.28 343.17,-41.56 333.03,-44.63 337.16,-50.28"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" target="_top" xlink:title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store...">
|
||||
<polygon fill="white" stroke="black" points="483,-0.5 483,-41.5 593,-41.5 593,-0.5 483,-0.5"/>
|
||||
<text text-anchor="start" x="491" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="491" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="538" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lift</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node17->Node18 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node17->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M444.32,-21C453.57,-21 463.25,-21 472.73,-21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="472.9,-24.5 482.9,-21 472.9,-17.5 472.9,-24.5"/>
|
||||
</g>
|
||||
<!-- Node19->Node20 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node19->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M295.32,-579.13C308.36,-577 322.26,-574.73 335.22,-572.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="336.08,-576.02 345.38,-570.96 334.95,-569.11 336.08,-576.02"/>
|
||||
</g>
|
||||
<!-- Node22 -->
|
||||
<g id="node22" class="node">
|
||||
<title>Node22</title>
|
||||
<g id="a_node22"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" target="_top" xlink:title="Update the value at a node.">
|
||||
<polygon fill="white" stroke="black" points="334,-469.5 334,-510.5 444,-510.5 444,-469.5 334,-469.5"/>
|
||||
<text text-anchor="start" x="342" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node21->Node22 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node21->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M295.32,-490C304.57,-490 314.25,-490 323.73,-490"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="323.9,-493.5 333.9,-490 323.9,-486.5 323.9,-493.5"/>
|
||||
</g>
|
||||
<!-- Node23->Node5 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node23->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.01,-461.81C143.13,-458.24 159.09,-453.54 175,-448.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="176.27,-452.13 184.87,-445.94 174.29,-445.41 176.27,-452.13"/>
|
||||
</g>
|
||||
<!-- Node23->Node6 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node23->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.25,-474.47C137.74,-477.37 144.38,-481.44 149,-487 187.57,-533.46 136.98,-581.4 185,-618 223.88,-647.64 256.78,-648.49 295,-618 351.3,-573.08 287.12,-517.11 331,-460 335.93,-453.58 342.64,-448.39 349.72,-444.25"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="351.51,-447.26 358.78,-439.55 348.29,-441.05 351.51,-447.26"/>
|
||||
</g>
|
||||
<!-- Node23->Node7 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node23->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.12,-460.87C137.46,-457.95 144.04,-454.05 149,-449 173.08,-424.51 209.61,-333.92 227.84,-286.07"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="231.17,-287.13 231.44,-276.54 224.63,-284.66 231.17,-287.13"/>
|
||||
</g>
|
||||
<!-- Node23->Node15 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node23->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.2,-461.99C137.85,-459.1 144.6,-454.93 149,-449 208.85,-368.4 127.33,-308.18 185,-226 185.54,-225.23 186.1,-224.48 186.69,-223.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="189.28,-226.11 193.81,-216.53 184.29,-221.2 189.28,-226.11"/>
|
||||
</g>
|
||||
<!-- Node23->Node19 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node23->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.34,-475.51C137.54,-478.41 143.99,-482.21 149,-487 173.16,-510.08 162.28,-528.5 185,-553 187.66,-555.87 190.6,-558.61 193.7,-561.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="191.58,-563.99 201.64,-567.32 195.86,-558.44 191.58,-563.99"/>
|
||||
</g>
|
||||
<!-- Node23->Node20 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node23->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.38,-474.36C137.89,-477.26 144.5,-481.34 149,-487 193.31,-542.68 129.32,-598.7 185,-643 223.26,-673.44 249.11,-659.86 295,-643 328.26,-630.78 357.75,-600.81 374.21,-581.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="376.96,-583.66 380.63,-573.71 371.56,-579.2 376.96,-583.66"/>
|
||||
</g>
|
||||
<!-- Node23->Node21 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node23->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.01,-471.58C143.13,-473.65 159.09,-476.37 175,-479.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="174.43,-482.54 184.87,-480.77 175.6,-475.64 174.43,-482.54"/>
|
||||
</g>
|
||||
<!-- Node24->Node5 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node24->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M129.87,-377.55C145.13,-384.89 166.93,-395.36 187.04,-405.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="185.6,-408.22 196.13,-409.4 188.63,-401.91 185.6,-408.22"/>
|
||||
</g>
|
||||
<!-- Node24->Node6 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node24->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M124.3,-358.38C157.22,-337.54 239.76,-292.92 295,-329 328.32,-350.76 301.59,-384.18 331,-411 332.72,-412.57 334.58,-414.01 336.53,-415.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="335.17,-418.58 345.6,-420.4 338.58,-412.47 335.17,-418.58"/>
|
||||
</g>
|
||||
<!-- Node24->Node7 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node24->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.16,-358.32C131.32,-343.03 158.45,-312.77 185,-291 188.55,-288.09 192.34,-285.22 196.22,-282.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="198.53,-285.1 204.77,-276.54 194.55,-279.34 198.53,-285.1"/>
|
||||
</g>
|
||||
<!-- Node24->Node15 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node24->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M112.98,-358.2C120.98,-333.33 145.02,-266.84 185,-226 186.06,-224.92 187.16,-223.87 188.3,-222.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="190.63,-225.47 196.3,-216.52 186.29,-219.98 190.63,-225.47"/>
|
||||
</g>
|
||||
<!-- Node24->Node19 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node24->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M120.96,-377.62C129.63,-385.76 141.49,-398.11 149,-411 174.7,-455.07 160.76,-475.11 185,-520 192.56,-534.01 203.08,-548.04 212.82,-559.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="210.23,-562.03 219.4,-567.33 215.53,-557.46 210.23,-562.03"/>
|
||||
</g>
|
||||
<!-- Node24->Node20 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node24->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.01,-365.12C168.78,-361.2 248.54,-358.81 295,-400 336.67,-436.94 299.45,-474.12 331,-520 338.99,-531.62 351.01,-541.55 361.96,-549.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="360.11,-551.98 370.41,-554.46 363.9,-546.1 360.11,-551.98"/>
|
||||
</g>
|
||||
<!-- Node24->Node21 -->
|
||||
<g id="edge39" class="edge">
|
||||
<title>Node24->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M119.28,-377.65C127.37,-386.2 139.31,-399.14 149,-411 166.1,-431.93 164.72,-442.14 185,-460 186.3,-461.15 187.65,-462.27 189.04,-463.36"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="187.19,-466.34 197.36,-469.32 191.27,-460.65 187.19,-466.34"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
<g id="navigator" transform="translate(0 0)" fill="#404254">
|
||||
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
|
||||
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
|
||||
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
|
||||
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
|
||||
<g id="arrowUp" xlink:href="#dirArrow" transform="translate(30 24)" onmousedown="handlePan(0,-1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowUp.mouseover" end="arrowUp.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowRight" xlink:href="#dirArrow" transform="rotate(90) translate(36 -43)" onmousedown="handlePan(1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowRight.mouseover" end="arrowRight.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowDown" xlink:href="#dirArrow" transform="rotate(180) translate(-30 -48)" onmousedown="handlePan(0,1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowDown.mouseover" end="arrowDown.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowLeft" xlink:href="#dirArrow" transform="rotate(270) translate(-36 17)" onmousedown="handlePan(-1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowLeft.mouseover" end="arrowLeft.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
</g>
|
||||
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
|
||||
<g id="arrow_out" transform="scale(0.3 0.3)">
|
||||
<a xlink:href="lcm__sum_8cpp_aa8dca7b867074164d5f45b0f3851269d_cgraph_org.svg" target="_base">
|
||||
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
|
||||
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
|
||||
<path id="arrow"
|
||||
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
|
||||
style="fill:#404040;"/>
|
||||
</a>
|
||||
</g>
|
||||
</svg>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 35 KiB |
@@ -0,0 +1,495 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
|
||||
-->
|
||||
<!-- Title: test Pages: 1 -->
|
||||
<svg width="601pt" height="670pt"
|
||||
viewBox="0.00 0.00 601.00 669.58" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 665.58)">
|
||||
<title>test</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-665.58 597,-665.58 597,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title=" ">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-458.5 0,-477.5 33,-477.5 33,-458.5 0,-458.5"/>
|
||||
<text text-anchor="middle" x="16.5" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="82,-534.5 82,-553.5 136,-553.5 136,-534.5 82,-534.5"/>
|
||||
<text text-anchor="middle" x="109" y="-541.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M24.26,-477.51C33.33,-489.73 50.45,-511.05 69,-525 71.05,-526.54 73.25,-528.01 75.52,-529.4"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="74.02,-532.57 84.47,-534.34 77.4,-526.44 74.02,-532.57"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="69,-496.5 69,-515.5 149,-515.5 149,-496.5 69,-496.5"/>
|
||||
<text text-anchor="middle" x="109" y="-503.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::lcmSum</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-474.62C44.95,-479.53 61.28,-486.38 75.7,-492.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="74.72,-495.82 85.29,-496.47 77.43,-489.37 74.72,-495.82"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-420.5 87,-439.5 131,-439.5 131,-420.5 87,-420.5"/>
|
||||
<text text-anchor="middle" x="109" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node1->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-461.38C45.48,-456.25 62.77,-448.99 77.64,-442.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="79.12,-445.92 86.99,-438.82 76.41,-439.47 79.12,-445.92"/>
|
||||
</g>
|
||||
<!-- Node23 -->
|
||||
<g id="node23" class="node">
|
||||
<title>Node23</title>
|
||||
<g id="a_node23"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-458.5 87,-477.5 131,-477.5 131,-458.5 87,-458.5"/>
|
||||
<text text-anchor="middle" x="109" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node23 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node1->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.26,-468C45.24,-468 62.11,-468 76.79,-468"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="76.99,-471.5 86.99,-468 76.99,-464.5 76.99,-471.5"/>
|
||||
</g>
|
||||
<!-- Node24 -->
|
||||
<g id="node24" class="node">
|
||||
<title>Node24</title>
|
||||
<g id="a_node24"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="87,-358.5 87,-377.5 131,-377.5 131,-358.5 87,-358.5"/>
|
||||
<text text-anchor="middle" x="109" y="-365.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node24 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node1->Node24</title>
|
||||
<path fill="none" stroke="midnightblue" d="M26.24,-458.31C36.48,-446.97 53.96,-427.61 69,-411 76.73,-402.46 85.33,-392.97 92.49,-385.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="95.19,-387.32 99.32,-377.56 90.01,-382.61 95.19,-387.32"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" target="_top" xlink:title="Adds an undirected edge from node u to node v in the tree.">
|
||||
<polygon fill="white" stroke="black" points="185,-409.5 185,-450.5 295,-450.5 295,-409.5 185,-409.5"/>
|
||||
<text text-anchor="start" x="193" y="-438.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="240" y="-416.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::add_edge</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node4->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.01,-430C143.02,-430 158.79,-430 174.55,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="174.87,-433.5 184.87,-430 174.87,-426.5 174.87,-433.5"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="331,-420.5 331,-439.5 447,-439.5 447,-420.5 331,-420.5"/>
|
||||
<text text-anchor="middle" x="389" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node6 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node4->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M128.2,-420.44C143.03,-413.21 164.76,-403.9 185,-400 233.01,-390.75 246.7,-392.4 295,-400 297.91,-400.46 325.03,-409.25 349.23,-417.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="348.41,-420.61 359,-420.41 350.6,-413.96 348.41,-420.61"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="185,-235.5 185,-276.5 295,-276.5 295,-235.5 185,-235.5"/>
|
||||
<text text-anchor="start" x="193" y="-264.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-253.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="240" y="-242.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node4->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M119.37,-420.42C127.53,-411.92 139.5,-399.01 149,-387 175.61,-353.37 203.08,-312.28 220.56,-285.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="223.64,-286.88 226.09,-276.58 217.75,-283.1 223.64,-286.88"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" target="_top" xlink:title="This function returns the sum of node values in the simple path from from node_1 to node_2.">
|
||||
<polygon fill="white" stroke="black" points="185,-175.5 185,-216.5 295,-216.5 295,-175.5 185,-175.5"/>
|
||||
<text text-anchor="start" x="193" y="-204.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-193.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="240" y="-182.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node15 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node4->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M121.66,-420.24C130.49,-412.21 142.23,-400.06 149,-387 182.75,-321.91 141.1,-284.73 185,-226 185.56,-225.25 186.15,-224.51 186.76,-223.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="189.32,-226.18 194.03,-216.69 184.43,-221.18 189.32,-226.18"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" target="_top" xlink:title="Set the values for all the nodes.">
|
||||
<polygon fill="white" stroke="black" points="185,-567.5 185,-608.5 295,-608.5 295,-567.5 185,-567.5"/>
|
||||
<text text-anchor="start" x="193" y="-596.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-585.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="240" y="-574.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::set_node_val</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node19 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node4->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.04,-436.65C137.52,-439.57 144.2,-443.59 149,-449 181.45,-485.6 154.84,-514.49 185,-553 187.1,-555.68 189.47,-558.22 192.01,-560.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="190.14,-563.62 200.05,-567.35 194.63,-558.25 190.14,-563.62"/>
|
||||
</g>
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="345.5,-554.5 345.5,-573.5 432.5,-573.5 432.5,-554.5 345.5,-554.5"/>
|
||||
<text text-anchor="middle" x="389" y="-561.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node20 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node4->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.02,-437.23C137.36,-440.15 143.95,-444.03 149,-449 174.22,-473.82 157,-498.38 185,-520 208.08,-537.82 283.01,-550.68 335.07,-557.74"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="334.78,-561.24 345.16,-559.08 335.7,-554.3 334.78,-561.24"/>
|
||||
</g>
|
||||
<!-- Node21 -->
|
||||
<g id="node21" class="node">
|
||||
<title>Node21</title>
|
||||
<g id="a_node21"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" target="_top" xlink:title="This function updates the value at node with val.">
|
||||
<polygon fill="white" stroke="black" points="185,-469.5 185,-510.5 295,-510.5 295,-469.5 185,-469.5"/>
|
||||
<text text-anchor="start" x="193" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="193" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="240" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node4->Node21 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node4->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M130.44,-439.51C145.34,-446.44 166.26,-456.17 185.76,-465.24"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.34,-468.44 194.89,-469.48 187.29,-462.09 184.34,-468.44"/>
|
||||
</g>
|
||||
<!-- Node5->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node5->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M295.32,-430C303.58,-430 312.18,-430 320.67,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="320.95,-433.5 330.95,-430 320.95,-426.5 320.95,-433.5"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" target="_top" xlink:title="Function that specifies the type of operation involved when segments are combined.">
|
||||
<polygon fill="white" stroke="black" points="334,-300.5 334,-341.5 444,-341.5 444,-300.5 334,-300.5"/>
|
||||
<text text-anchor="start" x="342" y="-329.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-318.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-307.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::combine</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node8 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node7->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M287.51,-276.57C301.66,-282.82 317.35,-289.76 332.05,-296.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="330.98,-299.61 341.54,-300.46 333.81,-293.21 330.98,-299.61"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" target="_top" xlink:title="Utility function to assign heavy child to each node (-1 for a leaf node)">
|
||||
<polygon fill="white" stroke="black" points="334,-240.5 334,-281.5 444,-281.5 444,-240.5 334,-240.5"/>
|
||||
<text text-anchor="start" x="342" y="-269.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-258.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_hc</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node9 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node7->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M295.32,-257.85C304.57,-258.16 314.25,-258.49 323.73,-258.81"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="323.79,-262.32 333.9,-259.16 324.03,-255.32 323.79,-262.32"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" target="_top" xlink:title="Utility function to lable the nodes so that heavy chains have a contigous lable.">
|
||||
<polygon fill="white" stroke="black" points="334,-180.5 334,-221.5 444,-221.5 444,-180.5 334,-180.5"/>
|
||||
<text text-anchor="start" x="342" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_labels</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node10 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node7->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M295.32,-235.68C304.77,-232.14 314.67,-228.44 324.34,-224.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="325.76,-228.02 333.9,-221.24 323.31,-221.47 325.76,-228.02"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" target="_top" xlink:title="Utility function to assign highest parent that can be reached though heavy chains.">
|
||||
<polygon fill="white" stroke="black" points="334,-120.5 334,-161.5 444,-161.5 444,-120.5 334,-120.5"/>
|
||||
<text text-anchor="start" x="342" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_par</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node11 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node7->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M283.1,-235.34C287.33,-232.48 291.39,-229.36 295,-226 316.39,-206.1 309.38,-190.65 331,-171 332.28,-169.84 333.61,-168.7 334.99,-167.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="337.19,-170.33 343.25,-161.65 333.09,-164.65 337.19,-170.33"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="334,-360.5 334,-401.5 444,-401.5 444,-360.5 334,-360.5"/>
|
||||
<text text-anchor="start" x="342" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-378.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node7->Node12 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node7->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M277.9,-276.65C283.99,-280.95 289.95,-285.78 295,-291 316.61,-313.37 308.4,-329.63 331,-351 332.12,-352.06 333.28,-353.09 334.48,-354.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="332.72,-357.14 342.83,-360.31 336.9,-351.53 332.72,-357.14"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" target="_top" xlink:title="Utility function to populate the t_par vector.">
|
||||
<polygon fill="white" stroke="black" points="483,-330.5 483,-371.5 593,-371.5 593,-330.5 483,-330.5"/>
|
||||
<text text-anchor="start" x="491" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="491" y="-348.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="538" y="-337.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node13 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node12->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M444.32,-369.91C453.67,-368.01 463.46,-366.01 473.03,-364.05"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="473.81,-367.47 482.9,-362.04 472.41,-360.61 473.81,-367.47"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" target="_top" xlink:title="Utility function to compute sub-tree sizes.">
|
||||
<polygon fill="white" stroke="black" points="483,-390.5 483,-431.5 593,-431.5 593,-390.5 483,-390.5"/>
|
||||
<text text-anchor="start" x="491" y="-419.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="491" y="-408.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="538" y="-397.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node12->Node14 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node12->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M444.32,-392.09C453.67,-393.99 463.46,-395.99 473.03,-397.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="472.41,-401.39 482.9,-399.96 473.81,-394.53 472.41,-401.39"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" target="_top" xlink:title="Utility function to break down a path query into two chain queries.">
|
||||
<polygon fill="white" stroke="black" points="334,-60.5 334,-101.5 444,-101.5 444,-60.5 334,-60.5"/>
|
||||
<text text-anchor="start" x="342" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-67.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::chain_query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node15->Node16 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node15->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M259.65,-175.44C276.98,-157.1 304.08,-130.25 331,-111 332.88,-109.65 334.84,-108.33 336.84,-107.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="339.12,-109.73 345.81,-101.52 335.46,-103.77 339.12,-109.73"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" target="_top" xlink:title="The function returns the least common ancestor of two nodes.">
|
||||
<polygon fill="white" stroke="black" points="334,-0.5 334,-41.5 444,-41.5 444,-0.5 334,-0.5"/>
|
||||
<text text-anchor="start" x="342" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node15->Node17 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node15->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M249.54,-175.37C263.02,-144.9 291.76,-87.55 331,-51 332.27,-49.82 333.59,-48.67 334.95,-47.56"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="337.16,-50.28 343.17,-41.56 333.03,-44.63 337.16,-50.28"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" target="_top" xlink:title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store...">
|
||||
<polygon fill="white" stroke="black" points="483,-0.5 483,-41.5 593,-41.5 593,-0.5 483,-0.5"/>
|
||||
<text text-anchor="start" x="491" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="491" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="538" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lift</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node17->Node18 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node17->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M444.32,-21C453.57,-21 463.25,-21 472.73,-21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="472.9,-24.5 482.9,-21 472.9,-17.5 472.9,-24.5"/>
|
||||
</g>
|
||||
<!-- Node19->Node20 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node19->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M295.32,-579.13C308.36,-577 322.26,-574.73 335.22,-572.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="336.08,-576.02 345.38,-570.96 334.95,-569.11 336.08,-576.02"/>
|
||||
</g>
|
||||
<!-- Node22 -->
|
||||
<g id="node22" class="node">
|
||||
<title>Node22</title>
|
||||
<g id="a_node22"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" target="_top" xlink:title="Update the value at a node.">
|
||||
<polygon fill="white" stroke="black" points="334,-469.5 334,-510.5 444,-510.5 444,-469.5 334,-469.5"/>
|
||||
<text text-anchor="start" x="342" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="342" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="389" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node21->Node22 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node21->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M295.32,-490C304.57,-490 314.25,-490 323.73,-490"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="323.9,-493.5 333.9,-490 323.9,-486.5 323.9,-493.5"/>
|
||||
</g>
|
||||
<!-- Node23->Node5 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node23->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.01,-461.81C143.13,-458.24 159.09,-453.54 175,-448.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="176.27,-452.13 184.87,-445.94 174.29,-445.41 176.27,-452.13"/>
|
||||
</g>
|
||||
<!-- Node23->Node6 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node23->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.25,-474.47C137.74,-477.37 144.38,-481.44 149,-487 187.57,-533.46 136.98,-581.4 185,-618 223.88,-647.64 256.78,-648.49 295,-618 351.3,-573.08 287.12,-517.11 331,-460 335.93,-453.58 342.64,-448.39 349.72,-444.25"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="351.51,-447.26 358.78,-439.55 348.29,-441.05 351.51,-447.26"/>
|
||||
</g>
|
||||
<!-- Node23->Node7 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node23->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.12,-460.87C137.46,-457.95 144.04,-454.05 149,-449 173.08,-424.51 209.61,-333.92 227.84,-286.07"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="231.17,-287.13 231.44,-276.54 224.63,-284.66 231.17,-287.13"/>
|
||||
</g>
|
||||
<!-- Node23->Node15 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node23->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.2,-461.99C137.85,-459.1 144.6,-454.93 149,-449 208.85,-368.4 127.33,-308.18 185,-226 185.54,-225.23 186.1,-224.48 186.69,-223.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="189.28,-226.11 193.81,-216.53 184.29,-221.2 189.28,-226.11"/>
|
||||
</g>
|
||||
<!-- Node23->Node19 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node23->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.34,-475.51C137.54,-478.41 143.99,-482.21 149,-487 173.16,-510.08 162.28,-528.5 185,-553 187.66,-555.87 190.6,-558.61 193.7,-561.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="191.58,-563.99 201.64,-567.32 195.86,-558.44 191.58,-563.99"/>
|
||||
</g>
|
||||
<!-- Node23->Node20 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node23->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.38,-474.36C137.89,-477.26 144.5,-481.34 149,-487 193.31,-542.68 129.32,-598.7 185,-643 223.26,-673.44 249.11,-659.86 295,-643 328.26,-630.78 357.75,-600.81 374.21,-581.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="376.96,-583.66 380.63,-573.71 371.56,-579.2 376.96,-583.66"/>
|
||||
</g>
|
||||
<!-- Node23->Node21 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node23->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.01,-471.58C143.13,-473.65 159.09,-476.37 175,-479.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="174.43,-482.54 184.87,-480.77 175.6,-475.64 174.43,-482.54"/>
|
||||
</g>
|
||||
<!-- Node24->Node5 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node24->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M129.87,-377.55C145.13,-384.89 166.93,-395.36 187.04,-405.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="185.6,-408.22 196.13,-409.4 188.63,-401.91 185.6,-408.22"/>
|
||||
</g>
|
||||
<!-- Node24->Node6 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node24->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M124.3,-358.38C157.22,-337.54 239.76,-292.92 295,-329 328.32,-350.76 301.59,-384.18 331,-411 332.72,-412.57 334.58,-414.01 336.53,-415.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="335.17,-418.58 345.6,-420.4 338.58,-412.47 335.17,-418.58"/>
|
||||
</g>
|
||||
<!-- Node24->Node7 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node24->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.16,-358.32C131.32,-343.03 158.45,-312.77 185,-291 188.55,-288.09 192.34,-285.22 196.22,-282.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="198.53,-285.1 204.77,-276.54 194.55,-279.34 198.53,-285.1"/>
|
||||
</g>
|
||||
<!-- Node24->Node15 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node24->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M112.98,-358.2C120.98,-333.33 145.02,-266.84 185,-226 186.06,-224.92 187.16,-223.87 188.3,-222.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="190.63,-225.47 196.3,-216.52 186.29,-219.98 190.63,-225.47"/>
|
||||
</g>
|
||||
<!-- Node24->Node19 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node24->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M120.96,-377.62C129.63,-385.76 141.49,-398.11 149,-411 174.7,-455.07 160.76,-475.11 185,-520 192.56,-534.01 203.08,-548.04 212.82,-559.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="210.23,-562.03 219.4,-567.33 215.53,-557.46 210.23,-562.03"/>
|
||||
</g>
|
||||
<!-- Node24->Node20 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node24->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M131.01,-365.12C168.78,-361.2 248.54,-358.81 295,-400 336.67,-436.94 299.45,-474.12 331,-520 338.99,-531.62 351.01,-541.55 361.96,-549.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="360.11,-551.98 370.41,-554.46 363.9,-546.1 360.11,-551.98"/>
|
||||
</g>
|
||||
<!-- Node24->Node21 -->
|
||||
<g id="edge39" class="edge">
|
||||
<title>Node24->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M119.28,-377.65C127.37,-386.2 139.31,-399.14 149,-411 166.1,-431.93 164.72,-442.14 185,-460 186.3,-461.15 187.65,-462.27 189.04,-463.36"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="187.19,-466.34 197.36,-469.32 191.27,-460.65 187.19,-466.34"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 30 KiB |
@@ -0,0 +1,27 @@
|
||||
<map id="main" name="main">
|
||||
<area shape="rect" id="node1" title="Main function." alt="" coords="5,250,56,277"/>
|
||||
<area shape="rect" id="node2" href="$d5/d83/lcm__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d" title=" " alt="" coords="104,250,148,277"/>
|
||||
<area shape="rect" id="node3" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/io/manip/endl.html#" title=" " alt="" coords="213,149,285,175"/>
|
||||
<area shape="rect" id="node4" href="$dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" title=" " alt="" coords="196,199,303,226"/>
|
||||
<area shape="rect" id="node5" href="$d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" title=" " alt="" coords="220,301,279,327"/>
|
||||
<area shape="rect" id="node24" href="$d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" title=" " alt="" coords="220,250,279,277"/>
|
||||
<area shape="rect" id="node25" href="$d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" title=" " alt="" coords="220,383,279,410"/>
|
||||
<area shape="rect" id="node6" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" title="Adds an undirected edge from node u to node v in the tree." alt="" coords="351,286,497,342"/>
|
||||
<area shape="rect" id="node7" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/push_back.html#" title=" " alt="" coords="545,301,700,327"/>
|
||||
<area shape="rect" id="node8" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" title="This function must be called after the tree adjacency list and node values are populated The function..." alt="" coords="351,518,497,574"/>
|
||||
<area shape="rect" id="node16" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" title="This function returns the sum of node values in the simple path from from node_1 to node_2." alt="" coords="351,598,497,654"/>
|
||||
<area shape="rect" id="node20" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" title="Set the values for all the nodes." alt="" coords="351,75,497,131"/>
|
||||
<area shape="rect" id="node21" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="565,122,681,149"/>
|
||||
<area shape="rect" id="node22" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" title="This function updates the value at node with val." alt="" coords="351,206,497,262"/>
|
||||
<area shape="rect" id="node9" href="$d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" title="Function that specifies the type of operation involved when segments are combined." alt="" coords="549,431,696,487"/>
|
||||
<area shape="rect" id="node10" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" title="Utility function to assign heavy child to each node (-1 for a leaf node)" alt="" coords="549,511,696,567"/>
|
||||
<area shape="rect" id="node11" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" title="Utility function to lable the nodes so that heavy chains have a contigous lable." alt="" coords="549,591,696,647"/>
|
||||
<area shape="rect" id="node12" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" title="Utility function to assign highest parent that can be reached though heavy chains." alt="" coords="549,671,696,727"/>
|
||||
<area shape="rect" id="node13" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" title="This function must be called after the tree adjacency list and node values are populated The function..." alt="" coords="549,351,696,407"/>
|
||||
<area shape="rect" id="node14" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" title="Utility function to populate the t_par vector." alt="" coords="748,391,895,447"/>
|
||||
<area shape="rect" id="node15" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" title="Utility function to compute sub-tree sizes." alt="" coords="748,311,895,367"/>
|
||||
<area shape="rect" id="node17" href="$d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" title="Utility function to break down a path query into two chain queries." alt="" coords="549,751,696,807"/>
|
||||
<area shape="rect" id="node18" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" title="The function returns the least common ancestor of two nodes." alt="" coords="549,831,696,887"/>
|
||||
<area shape="rect" id="node19" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store..." alt="" coords="748,831,895,887"/>
|
||||
<area shape="rect" id="node23" href="$d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" title="Update the value at a node." alt="" coords="549,206,696,262"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
8adfd5d392552933ca40651c6b8233e2
|
||||
@@ -0,0 +1,598 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
|
||||
-->
|
||||
<!-- Title: main Pages: 1 -->
|
||||
<!--zoomable 670 -->
|
||||
<svg id="main" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" onload="init(evt)">
|
||||
<style type="text/css"><![CDATA[
|
||||
.edge:hover path { stroke: red; }
|
||||
.edge:hover polygon { stroke: red; fill: red; }
|
||||
]]></style>
|
||||
<script type="text/javascript"><![CDATA[
|
||||
var edges = document.getElementsByTagName('g');
|
||||
if (edges && edges.length) {
|
||||
for (var i=0;i<edges.length;i++) {
|
||||
if (edges[i].id.substr(0,4)=='edge') {
|
||||
edges[i].setAttribute('class','edge');
|
||||
}
|
||||
}
|
||||
}
|
||||
]]></script>
|
||||
<defs>
|
||||
<circle id="rim" cx="0" cy="0" r="7"/>
|
||||
<circle id="rim2" cx="0" cy="0" r="3.5"/>
|
||||
<g id="zoomPlus">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomplus.mouseover" end="zoomplus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8M0,-4v8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="zoomMin">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="zoomminus.mouseover" end="zoomminus.mouseout"/>
|
||||
</use>
|
||||
<path d="M-4,0h8" fill="none" stroke="white" stroke-width="1.5" pointer-events="none"/>
|
||||
</g>
|
||||
<g id="dirArrow">
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="resetDef">
|
||||
<use xlink:href="#rim2" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="reset.mouseover" end="reset.mouseout"/>
|
||||
</use>
|
||||
</g>
|
||||
</defs>
|
||||
|
||||
<script type="text/javascript">
|
||||
var viewWidth = 675;
|
||||
var viewHeight = 670;
|
||||
var sectionId = 'dynsection-1';
|
||||
</script>
|
||||
<script xlink:href="../../svgpan.js"/>
|
||||
<svg id="graph" class="graph">
|
||||
<g id="viewport">
|
||||
<title>main</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-665.58 671,-665.58 671,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title="Main function.">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-458.5 0,-477.5 38,-477.5 38,-458.5 0,-458.5"/>
|
||||
<text text-anchor="middle" x="19" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d5/d83/lcm__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-458.5 74,-477.5 107,-477.5 107,-458.5 74,-458.5"/>
|
||||
<text text-anchor="middle" x="90.5" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.26,-468C46.07,-468 55.31,-468 63.79,-468"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="63.95,-471.5 73.95,-468 63.95,-464.5 63.95,-471.5"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="156,-534.5 156,-553.5 210,-553.5 210,-534.5 156,-534.5"/>
|
||||
<text text-anchor="middle" x="183" y="-541.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M98.26,-477.51C107.33,-489.73 124.45,-511.05 143,-525 145.05,-526.54 147.25,-528.01 149.52,-529.4"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.02,-532.57 158.47,-534.34 151.4,-526.44 148.02,-532.57"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="143,-496.5 143,-515.5 223,-515.5 223,-496.5 143,-496.5"/>
|
||||
<text text-anchor="middle" x="183" y="-503.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::lcmSum</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node2->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-474.62C118.95,-479.53 135.28,-486.38 149.7,-492.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.72,-495.82 159.29,-496.47 151.43,-489.37 148.72,-495.82"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-420.5 161,-439.5 205,-439.5 205,-420.5 161,-420.5"/>
|
||||
<text text-anchor="middle" x="183" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node2->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-461.38C119.48,-456.25 136.77,-448.99 151.64,-442.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="153.12,-445.92 160.99,-438.82 150.41,-439.47 153.12,-445.92"/>
|
||||
</g>
|
||||
<!-- Node24 -->
|
||||
<g id="node24" class="node">
|
||||
<title>Node24</title>
|
||||
<g id="a_node24"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-458.5 161,-477.5 205,-477.5 205,-458.5 161,-458.5"/>
|
||||
<text text-anchor="middle" x="183" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node24 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node2->Node24</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-468C119.24,-468 136.11,-468 150.79,-468"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="150.99,-471.5 160.99,-468 150.99,-464.5 150.99,-471.5"/>
|
||||
</g>
|
||||
<!-- Node25 -->
|
||||
<g id="node25" class="node">
|
||||
<title>Node25</title>
|
||||
<g id="a_node25"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-358.5 161,-377.5 205,-377.5 205,-358.5 161,-358.5"/>
|
||||
<text text-anchor="middle" x="183" y="-365.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node25 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node2->Node25</title>
|
||||
<path fill="none" stroke="midnightblue" d="M100.24,-458.31C110.48,-446.97 127.96,-427.61 143,-411 150.73,-402.46 159.33,-392.97 166.49,-385.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="169.19,-387.32 173.32,-377.56 164.01,-382.61 169.19,-387.32"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" target="_top" xlink:title="Adds an undirected edge from node u to node v in the tree.">
|
||||
<polygon fill="white" stroke="black" points="259,-409.5 259,-450.5 369,-450.5 369,-409.5 259,-409.5"/>
|
||||
<text text-anchor="start" x="267" y="-438.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="314" y="-416.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::add_edge</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node5->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.01,-430C217.02,-430 232.79,-430 248.55,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="248.87,-433.5 258.87,-430 248.87,-426.5 248.87,-433.5"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="405,-420.5 405,-439.5 521,-439.5 521,-420.5 405,-420.5"/>
|
||||
<text text-anchor="middle" x="463" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node7 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node5->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M202.2,-420.44C217.03,-413.21 238.76,-403.9 259,-400 307.01,-390.75 320.7,-392.4 369,-400 371.91,-400.46 399.03,-409.25 423.23,-417.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="422.41,-420.61 433,-420.41 424.6,-413.96 422.41,-420.61"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="259,-235.5 259,-276.5 369,-276.5 369,-235.5 259,-235.5"/>
|
||||
<text text-anchor="start" x="267" y="-264.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-253.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="314" y="-242.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node8 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node5->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M193.37,-420.42C201.53,-411.92 213.5,-399.01 223,-387 249.61,-353.37 277.08,-312.28 294.56,-285.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="297.64,-286.88 300.09,-276.58 291.75,-283.1 297.64,-286.88"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" target="_top" xlink:title="This function returns the sum of node values in the simple path from from node_1 to node_2.">
|
||||
<polygon fill="white" stroke="black" points="259,-175.5 259,-216.5 369,-216.5 369,-175.5 259,-175.5"/>
|
||||
<text text-anchor="start" x="267" y="-204.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-193.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="314" y="-182.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node16 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node5->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M195.66,-420.24C204.49,-412.21 216.23,-400.06 223,-387 256.75,-321.91 215.1,-284.73 259,-226 259.56,-225.25 260.15,-224.51 260.76,-223.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="263.32,-226.18 268.03,-216.69 258.43,-221.18 263.32,-226.18"/>
|
||||
</g>
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" target="_top" xlink:title="Set the values for all the nodes.">
|
||||
<polygon fill="white" stroke="black" points="259,-567.5 259,-608.5 369,-608.5 369,-567.5 259,-567.5"/>
|
||||
<text text-anchor="start" x="267" y="-596.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-585.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="314" y="-574.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::set_node_val</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node20 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node5->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.04,-436.65C211.52,-439.57 218.2,-443.59 223,-449 255.45,-485.6 228.84,-514.49 259,-553 261.1,-555.68 263.47,-558.22 266.01,-560.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="264.14,-563.62 274.05,-567.35 268.63,-558.25 264.14,-563.62"/>
|
||||
</g>
|
||||
<!-- Node21 -->
|
||||
<g id="node21" class="node">
|
||||
<title>Node21</title>
|
||||
<g id="a_node21"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="419.5,-554.5 419.5,-573.5 506.5,-573.5 506.5,-554.5 419.5,-554.5"/>
|
||||
<text text-anchor="middle" x="463" y="-561.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node21 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node5->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.02,-437.23C211.36,-440.15 217.95,-444.03 223,-449 248.22,-473.82 231,-498.38 259,-520 282.08,-537.82 357.01,-550.68 409.07,-557.74"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="408.78,-561.24 419.16,-559.08 409.7,-554.3 408.78,-561.24"/>
|
||||
</g>
|
||||
<!-- Node22 -->
|
||||
<g id="node22" class="node">
|
||||
<title>Node22</title>
|
||||
<g id="a_node22"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" target="_top" xlink:title="This function updates the value at node with val.">
|
||||
<polygon fill="white" stroke="black" points="259,-469.5 259,-510.5 369,-510.5 369,-469.5 259,-469.5"/>
|
||||
<text text-anchor="start" x="267" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="314" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node22 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node5->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M204.44,-439.51C219.34,-446.44 240.26,-456.17 259.76,-465.24"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="258.34,-468.44 268.89,-469.48 261.29,-462.09 258.34,-468.44"/>
|
||||
</g>
|
||||
<!-- Node6->Node7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node6->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M369.32,-430C377.58,-430 386.18,-430 394.67,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="394.95,-433.5 404.95,-430 394.95,-426.5 394.95,-433.5"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" target="_top" xlink:title="Function that specifies the type of operation involved when segments are combined.">
|
||||
<polygon fill="white" stroke="black" points="408,-300.5 408,-341.5 518,-341.5 518,-300.5 408,-300.5"/>
|
||||
<text text-anchor="start" x="416" y="-329.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-318.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-307.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::combine</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node9 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node8->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M361.51,-276.57C375.66,-282.82 391.35,-289.76 406.05,-296.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="404.98,-299.61 415.54,-300.46 407.81,-293.21 404.98,-299.61"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" target="_top" xlink:title="Utility function to assign heavy child to each node (-1 for a leaf node)">
|
||||
<polygon fill="white" stroke="black" points="408,-240.5 408,-281.5 518,-281.5 518,-240.5 408,-240.5"/>
|
||||
<text text-anchor="start" x="416" y="-269.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-258.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_hc</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node10 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node8->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M369.32,-257.85C378.57,-258.16 388.25,-258.49 397.73,-258.81"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="397.79,-262.32 407.9,-259.16 398.03,-255.32 397.79,-262.32"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" target="_top" xlink:title="Utility function to lable the nodes so that heavy chains have a contigous lable.">
|
||||
<polygon fill="white" stroke="black" points="408,-180.5 408,-221.5 518,-221.5 518,-180.5 408,-180.5"/>
|
||||
<text text-anchor="start" x="416" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_labels</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node11 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node8->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M369.32,-235.68C378.77,-232.14 388.67,-228.44 398.34,-224.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="399.76,-228.02 407.9,-221.24 397.31,-221.47 399.76,-228.02"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" target="_top" xlink:title="Utility function to assign highest parent that can be reached though heavy chains.">
|
||||
<polygon fill="white" stroke="black" points="408,-120.5 408,-161.5 518,-161.5 518,-120.5 408,-120.5"/>
|
||||
<text text-anchor="start" x="416" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_par</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node12 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node8->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M357.1,-235.34C361.33,-232.48 365.39,-229.36 369,-226 390.39,-206.1 383.38,-190.65 405,-171 406.28,-169.84 407.61,-168.7 408.99,-167.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="411.19,-170.33 417.25,-161.65 407.09,-164.65 411.19,-170.33"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="408,-360.5 408,-401.5 518,-401.5 518,-360.5 408,-360.5"/>
|
||||
<text text-anchor="start" x="416" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-378.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node13 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node8->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M351.9,-276.65C357.99,-280.95 363.95,-285.78 369,-291 390.61,-313.37 382.4,-329.63 405,-351 406.12,-352.06 407.28,-353.09 408.48,-354.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="406.72,-357.14 416.83,-360.31 410.9,-351.53 406.72,-357.14"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" target="_top" xlink:title="Utility function to populate the t_par vector.">
|
||||
<polygon fill="white" stroke="black" points="557,-330.5 557,-371.5 667,-371.5 667,-330.5 557,-330.5"/>
|
||||
<text text-anchor="start" x="565" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="565" y="-348.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="612" y="-337.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node14 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node13->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M518.32,-369.91C527.67,-368.01 537.46,-366.01 547.03,-364.05"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="547.81,-367.47 556.9,-362.04 546.41,-360.61 547.81,-367.47"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" target="_top" xlink:title="Utility function to compute sub-tree sizes.">
|
||||
<polygon fill="white" stroke="black" points="557,-390.5 557,-431.5 667,-431.5 667,-390.5 557,-390.5"/>
|
||||
<text text-anchor="start" x="565" y="-419.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="565" y="-408.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="612" y="-397.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node15 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node13->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M518.32,-392.09C527.67,-393.99 537.46,-395.99 547.03,-397.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="546.41,-401.39 556.9,-399.96 547.81,-394.53 546.41,-401.39"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" target="_top" xlink:title="Utility function to break down a path query into two chain queries.">
|
||||
<polygon fill="white" stroke="black" points="408,-60.5 408,-101.5 518,-101.5 518,-60.5 408,-60.5"/>
|
||||
<text text-anchor="start" x="416" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-67.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::chain_query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node17 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node16->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M333.65,-175.44C350.98,-157.1 378.08,-130.25 405,-111 406.88,-109.65 408.84,-108.33 410.84,-107.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="413.12,-109.73 419.81,-101.52 409.46,-103.77 413.12,-109.73"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" target="_top" xlink:title="The function returns the least common ancestor of two nodes.">
|
||||
<polygon fill="white" stroke="black" points="408,-0.5 408,-41.5 518,-41.5 518,-0.5 408,-0.5"/>
|
||||
<text text-anchor="start" x="416" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node18 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node16->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M323.54,-175.37C337.02,-144.9 365.76,-87.55 405,-51 406.27,-49.82 407.59,-48.67 408.95,-47.56"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="411.16,-50.28 417.17,-41.56 407.03,-44.63 411.16,-50.28"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" target="_top" xlink:title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store...">
|
||||
<polygon fill="white" stroke="black" points="557,-0.5 557,-41.5 667,-41.5 667,-0.5 557,-0.5"/>
|
||||
<text text-anchor="start" x="565" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="565" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="612" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lift</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node18->Node19 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node18->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M518.32,-21C527.57,-21 537.25,-21 546.73,-21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="546.9,-24.5 556.9,-21 546.9,-17.5 546.9,-24.5"/>
|
||||
</g>
|
||||
<!-- Node20->Node21 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node20->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M369.32,-579.13C382.36,-577 396.26,-574.73 409.22,-572.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="410.08,-576.02 419.38,-570.96 408.95,-569.11 410.08,-576.02"/>
|
||||
</g>
|
||||
<!-- Node23 -->
|
||||
<g id="node23" class="node">
|
||||
<title>Node23</title>
|
||||
<g id="a_node23"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" target="_top" xlink:title="Update the value at a node.">
|
||||
<polygon fill="white" stroke="black" points="408,-469.5 408,-510.5 518,-510.5 518,-469.5 408,-469.5"/>
|
||||
<text text-anchor="start" x="416" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node22->Node23 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node22->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M369.32,-490C378.57,-490 388.25,-490 397.73,-490"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="397.9,-493.5 407.9,-490 397.9,-486.5 397.9,-493.5"/>
|
||||
</g>
|
||||
<!-- Node24->Node6 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node24->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.01,-461.81C217.13,-458.24 233.09,-453.54 249,-448.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="250.27,-452.13 258.87,-445.94 248.29,-445.41 250.27,-452.13"/>
|
||||
</g>
|
||||
<!-- Node24->Node7 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node24->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.25,-474.47C211.74,-477.37 218.38,-481.44 223,-487 261.57,-533.46 210.98,-581.4 259,-618 297.88,-647.64 330.78,-648.49 369,-618 425.3,-573.08 361.12,-517.11 405,-460 409.93,-453.58 416.64,-448.39 423.72,-444.25"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="425.51,-447.26 432.78,-439.55 422.29,-441.05 425.51,-447.26"/>
|
||||
</g>
|
||||
<!-- Node24->Node8 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node24->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.12,-460.87C211.46,-457.95 218.04,-454.05 223,-449 247.08,-424.51 283.61,-333.92 301.84,-286.07"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="305.17,-287.13 305.44,-276.54 298.63,-284.66 305.17,-287.13"/>
|
||||
</g>
|
||||
<!-- Node24->Node16 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node24->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.2,-461.99C211.85,-459.1 218.6,-454.93 223,-449 282.85,-368.4 201.33,-308.18 259,-226 259.54,-225.23 260.1,-224.48 260.69,-223.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="263.28,-226.11 267.81,-216.53 258.29,-221.2 263.28,-226.11"/>
|
||||
</g>
|
||||
<!-- Node24->Node20 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node24->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.34,-475.51C211.54,-478.41 217.99,-482.21 223,-487 247.16,-510.08 236.28,-528.5 259,-553 261.66,-555.87 264.6,-558.61 267.7,-561.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="265.58,-563.99 275.64,-567.32 269.86,-558.44 265.58,-563.99"/>
|
||||
</g>
|
||||
<!-- Node24->Node21 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node24->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.38,-474.36C211.89,-477.26 218.5,-481.34 223,-487 267.31,-542.68 203.32,-598.7 259,-643 297.26,-673.44 323.11,-659.86 369,-643 402.26,-630.78 431.75,-600.81 448.21,-581.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="450.96,-583.66 454.63,-573.71 445.56,-579.2 450.96,-583.66"/>
|
||||
</g>
|
||||
<!-- Node24->Node22 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node24->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.01,-471.58C217.13,-473.65 233.09,-476.37 249,-479.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="248.43,-482.54 258.87,-480.77 249.6,-475.64 248.43,-482.54"/>
|
||||
</g>
|
||||
<!-- Node25->Node6 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node25->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M203.87,-377.55C219.13,-384.89 240.93,-395.36 261.04,-405.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="259.6,-408.22 270.13,-409.4 262.63,-401.91 259.6,-408.22"/>
|
||||
</g>
|
||||
<!-- Node25->Node7 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node25->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M198.3,-358.38C231.22,-337.54 313.76,-292.92 369,-329 402.32,-350.76 375.59,-384.18 405,-411 406.72,-412.57 408.58,-414.01 410.53,-415.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="409.17,-418.58 419.6,-420.4 412.58,-412.47 409.17,-418.58"/>
|
||||
</g>
|
||||
<!-- Node25->Node8 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node25->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.16,-358.32C205.32,-343.03 232.45,-312.77 259,-291 262.55,-288.09 266.34,-285.22 270.22,-282.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="272.53,-285.1 278.77,-276.54 268.55,-279.34 272.53,-285.1"/>
|
||||
</g>
|
||||
<!-- Node25->Node16 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node25->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M186.98,-358.2C194.98,-333.33 219.02,-266.84 259,-226 260.06,-224.92 261.16,-223.87 262.3,-222.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="264.63,-225.47 270.3,-216.52 260.29,-219.98 264.63,-225.47"/>
|
||||
</g>
|
||||
<!-- Node25->Node20 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node25->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M194.96,-377.62C203.63,-385.76 215.49,-398.11 223,-411 248.7,-455.07 234.76,-475.11 259,-520 266.56,-534.01 277.08,-548.04 286.82,-559.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="284.23,-562.03 293.4,-567.33 289.53,-557.46 284.23,-562.03"/>
|
||||
</g>
|
||||
<!-- Node25->Node21 -->
|
||||
<g id="edge39" class="edge">
|
||||
<title>Node25->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.01,-365.12C242.78,-361.2 322.54,-358.81 369,-400 410.67,-436.94 373.45,-474.12 405,-520 412.99,-531.62 425.01,-541.55 435.96,-549.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="434.11,-551.98 444.41,-554.46 437.9,-546.1 434.11,-551.98"/>
|
||||
</g>
|
||||
<!-- Node25->Node22 -->
|
||||
<g id="edge40" class="edge">
|
||||
<title>Node25->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M193.28,-377.65C201.37,-386.2 213.31,-399.14 223,-411 240.1,-431.93 238.72,-442.14 259,-460 260.3,-461.15 261.65,-462.27 263.04,-463.36"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="261.19,-466.34 271.36,-469.32 265.27,-460.65 261.19,-466.34"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
<g id="navigator" transform="translate(0 0)" fill="#404254">
|
||||
<rect fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width=".5" x="0" y="0" width="60" height="60"/>
|
||||
<use id="zoomplus" xlink:href="#zoomPlus" x="17" y="9" onmousedown="handleZoom(evt,'in')"/>
|
||||
<use id="zoomminus" xlink:href="#zoomMin" x="42" y="9" onmousedown="handleZoom(evt,'out')"/>
|
||||
<use id="reset" xlink:href="#resetDef" x="30" y="36" onmousedown="handleReset()"/>
|
||||
<g id="arrowUp" xlink:href="#dirArrow" transform="translate(30 24)" onmousedown="handlePan(0,-1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowUp.mouseover" end="arrowUp.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowRight" xlink:href="#dirArrow" transform="rotate(90) translate(36 -43)" onmousedown="handlePan(1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowRight.mouseover" end="arrowRight.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowDown" xlink:href="#dirArrow" transform="rotate(180) translate(-30 -48)" onmousedown="handlePan(0,1)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowDown.mouseover" end="arrowDown.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
<g id="arrowLeft" xlink:href="#dirArrow" transform="rotate(270) translate(-36 17)" onmousedown="handlePan(-1,0)">
|
||||
<use xlink:href="#rim" fill="#404040">
|
||||
<set attributeName="fill" to="#808080" begin="arrowLeft.mouseover" end="arrowLeft.mouseout"/>
|
||||
</use>
|
||||
<path fill="none" stroke="white" stroke-width="1.5" d="M0,-3.0v7 M-2.5,-0.5L0,-3.0L2.5,-0.5"/>
|
||||
</g>
|
||||
</g>
|
||||
<svg viewBox="0 0 15 15" width="100%" height="30px" preserveAspectRatio="xMaxYMin meet">
|
||||
<g id="arrow_out" transform="scale(0.3 0.3)">
|
||||
<a xlink:href="lcm__sum_8cpp_ae66f6b31b5ad750f1fe042a706a4e3d4_cgraph_org.svg" target="_base">
|
||||
<rect id="button" ry="5" rx="5" y="6" x="6" height="38" width="38"
|
||||
fill="#f2f5e9" fill-opacity="0.5" stroke="#606060" stroke-width="1.0"/>
|
||||
<path id="arrow"
|
||||
d="M 11.500037,31.436501 C 11.940474,20.09759 22.043105,11.32322 32.158766,21.979434 L 37.068811,17.246167 C 37.068811,17.246167 37.088388,32 37.088388,32 L 22.160133,31.978069 C 22.160133,31.978069 26.997745,27.140456 26.997745,27.140456 C 18.528582,18.264221 13.291696,25.230495 11.500037,31.436501 z"
|
||||
style="fill:#404040;"/>
|
||||
</a>
|
||||
</g>
|
||||
</svg>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 36 KiB |
@@ -0,0 +1,510 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
|
||||
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by graphviz version 2.44.1 (20200629.0846)
|
||||
-->
|
||||
<!-- Title: main Pages: 1 -->
|
||||
<svg width="675pt" height="670pt"
|
||||
viewBox="0.00 0.00 675.00 669.58" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 665.58)">
|
||||
<title>main</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-665.58 671,-665.58 671,4 -4,4"/>
|
||||
<!-- Node1 -->
|
||||
<g id="node1" class="node">
|
||||
<title>Node1</title>
|
||||
<g id="a_node1"><a xlink:title="Main function.">
|
||||
<polygon fill="#bfbfbf" stroke="black" points="0,-458.5 0,-477.5 38,-477.5 38,-458.5 0,-458.5"/>
|
||||
<text text-anchor="middle" x="19" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">main</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d5/d83/lcm__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-458.5 74,-477.5 107,-477.5 107,-458.5 74,-458.5"/>
|
||||
<text text-anchor="middle" x="90.5" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M38.26,-468C46.07,-468 55.31,-468 63.79,-468"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="63.95,-471.5 73.95,-468 63.95,-464.5 63.95,-471.5"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/io/manip/endl.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="156,-534.5 156,-553.5 210,-553.5 210,-534.5 156,-534.5"/>
|
||||
<text text-anchor="middle" x="183" y="-541.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::endl</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M98.26,-477.51C107.33,-489.73 124.45,-511.05 143,-525 145.05,-526.54 147.25,-528.01 149.52,-529.4"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.02,-532.57 158.47,-534.34 151.4,-526.44 148.02,-532.57"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../dd/d47/namespacemath.html#a04065193d190d605e1f0d0d93a87e244" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="143,-496.5 143,-515.5 223,-515.5 223,-496.5 143,-496.5"/>
|
||||
<text text-anchor="middle" x="183" y="-503.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::lcmSum</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node2->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-474.62C118.95,-479.53 135.28,-486.38 149.7,-492.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.72,-495.82 159.29,-496.47 151.43,-489.37 148.72,-495.82"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-420.5 161,-439.5 205,-439.5 205,-420.5 161,-420.5"/>
|
||||
<text text-anchor="middle" x="183" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node2->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-461.38C119.48,-456.25 136.77,-448.99 151.64,-442.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="153.12,-445.92 160.99,-438.82 150.41,-439.47 153.12,-445.92"/>
|
||||
</g>
|
||||
<!-- Node24 -->
|
||||
<g id="node24" class="node">
|
||||
<title>Node24</title>
|
||||
<g id="a_node24"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-458.5 161,-477.5 205,-477.5 205,-458.5 161,-458.5"/>
|
||||
<text text-anchor="middle" x="183" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node24 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node2->Node24</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.26,-468C119.24,-468 136.11,-468 150.79,-468"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="150.99,-471.5 160.99,-468 150.99,-464.5 150.99,-471.5"/>
|
||||
</g>
|
||||
<!-- Node25 -->
|
||||
<g id="node25" class="node">
|
||||
<title>Node25</title>
|
||||
<g id="a_node25"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="161,-358.5 161,-377.5 205,-377.5 205,-358.5 161,-358.5"/>
|
||||
<text text-anchor="middle" x="183" y="-365.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node25 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node2->Node25</title>
|
||||
<path fill="none" stroke="midnightblue" d="M100.24,-458.31C110.48,-446.97 127.96,-427.61 143,-411 150.73,-402.46 159.33,-392.97 166.49,-385.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="169.19,-387.32 173.32,-377.56 164.01,-382.61 169.19,-387.32"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a79ab4601c4a95c0902ac04e779e5f54d" target="_top" xlink:title="Adds an undirected edge from node u to node v in the tree.">
|
||||
<polygon fill="white" stroke="black" points="259,-409.5 259,-450.5 369,-450.5 369,-409.5 259,-409.5"/>
|
||||
<text text-anchor="start" x="267" y="-438.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="314" y="-416.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::add_edge</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node5->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.01,-430C217.02,-430 232.79,-430 248.55,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="248.87,-433.5 258.87,-430 248.87,-426.5 248.87,-433.5"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/push_back.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="405,-420.5 405,-439.5 521,-439.5 521,-420.5 405,-420.5"/>
|
||||
<text text-anchor="middle" x="463" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node7 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node5->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M202.2,-420.44C217.03,-413.21 238.76,-403.9 259,-400 307.01,-390.75 320.7,-392.4 369,-400 371.91,-400.46 399.03,-409.25 423.23,-417.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="422.41,-420.61 433,-420.41 424.6,-413.96 422.41,-420.61"/>
|
||||
</g>
|
||||
<!-- Node8 -->
|
||||
<g id="node8" class="node">
|
||||
<title>Node8</title>
|
||||
<g id="a_node8"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#ae9e979edd69678b85665c01e2ee97828" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="259,-235.5 259,-276.5 369,-276.5 369,-235.5 259,-235.5"/>
|
||||
<text text-anchor="start" x="267" y="-264.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-253.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="314" y="-242.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node8 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node5->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M193.37,-420.42C201.53,-411.92 213.5,-399.01 223,-387 249.61,-353.37 277.08,-312.28 294.56,-285.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="297.64,-286.88 300.09,-276.58 291.75,-283.1 297.64,-286.88"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a4dfbf5d9df825eeb63b294c6849bdcab" target="_top" xlink:title="This function returns the sum of node values in the simple path from from node_1 to node_2.">
|
||||
<polygon fill="white" stroke="black" points="259,-175.5 259,-216.5 369,-216.5 369,-175.5 259,-175.5"/>
|
||||
<text text-anchor="start" x="267" y="-204.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-193.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="314" y="-182.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node16 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node5->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M195.66,-420.24C204.49,-412.21 216.23,-400.06 223,-387 256.75,-321.91 215.1,-284.73 259,-226 259.56,-225.25 260.15,-224.51 260.76,-223.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="263.32,-226.18 268.03,-216.69 258.43,-221.18 263.32,-226.18"/>
|
||||
</g>
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" target="_top" xlink:title="Set the values for all the nodes.">
|
||||
<polygon fill="white" stroke="black" points="259,-567.5 259,-608.5 369,-608.5 369,-567.5 259,-567.5"/>
|
||||
<text text-anchor="start" x="267" y="-596.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-585.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="314" y="-574.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::set_node_val</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node20 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node5->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.04,-436.65C211.52,-439.57 218.2,-443.59 223,-449 255.45,-485.6 228.84,-514.49 259,-553 261.1,-555.68 263.47,-558.22 266.01,-560.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="264.14,-563.62 274.05,-567.35 268.63,-558.25 264.14,-563.62"/>
|
||||
</g>
|
||||
<!-- Node21 -->
|
||||
<g id="node21" class="node">
|
||||
<title>Node21</title>
|
||||
<g id="a_node21"><a target="_blank" xlink:href="http://en.cppreference.com/w/cpp/container/vector/size.html#" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="419.5,-554.5 419.5,-573.5 506.5,-573.5 506.5,-554.5 419.5,-554.5"/>
|
||||
<text text-anchor="middle" x="463" y="-561.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node21 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node5->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.02,-437.23C211.36,-440.15 217.95,-444.03 223,-449 248.22,-473.82 231,-498.38 259,-520 282.08,-537.82 357.01,-550.68 409.07,-557.74"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="408.78,-561.24 419.16,-559.08 409.7,-554.3 408.78,-561.24"/>
|
||||
</g>
|
||||
<!-- Node22 -->
|
||||
<g id="node22" class="node">
|
||||
<title>Node22</title>
|
||||
<g id="a_node22"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a9f1cb54ed09fde931bf3220d75ee4c57" target="_top" xlink:title="This function updates the value at node with val.">
|
||||
<polygon fill="white" stroke="black" points="259,-469.5 259,-510.5 369,-510.5 369,-469.5 259,-469.5"/>
|
||||
<text text-anchor="start" x="267" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="267" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="314" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node5->Node22 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node5->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M204.44,-439.51C219.34,-446.44 240.26,-456.17 259.76,-465.24"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="258.34,-468.44 268.89,-469.48 261.29,-462.09 258.34,-468.44"/>
|
||||
</g>
|
||||
<!-- Node6->Node7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node6->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M369.32,-430C377.58,-430 386.18,-430 394.67,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="394.95,-433.5 404.95,-430 394.95,-426.5 394.95,-433.5"/>
|
||||
</g>
|
||||
<!-- Node9 -->
|
||||
<g id="node9" class="node">
|
||||
<title>Node9</title>
|
||||
<g id="a_node9"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a41c733f5f5e262b308f7cb95c88c1e74" target="_top" xlink:title="Function that specifies the type of operation involved when segments are combined.">
|
||||
<polygon fill="white" stroke="black" points="408,-300.5 408,-341.5 518,-341.5 518,-300.5 408,-300.5"/>
|
||||
<text text-anchor="start" x="416" y="-329.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-318.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-307.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::combine</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node9 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node8->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M361.51,-276.57C375.66,-282.82 391.35,-289.76 406.05,-296.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="404.98,-299.61 415.54,-300.46 407.81,-293.21 404.98,-299.61"/>
|
||||
</g>
|
||||
<!-- Node10 -->
|
||||
<g id="node10" class="node">
|
||||
<title>Node10</title>
|
||||
<g id="a_node10"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#af64848d6630c39d0f09ce2359cc7c4f8" target="_top" xlink:title="Utility function to assign heavy child to each node (-1 for a leaf node)">
|
||||
<polygon fill="white" stroke="black" points="408,-240.5 408,-281.5 518,-281.5 518,-240.5 408,-240.5"/>
|
||||
<text text-anchor="start" x="416" y="-269.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-258.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_hc</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node10 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node8->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M369.32,-257.85C378.57,-258.16 388.25,-258.49 397.73,-258.81"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="397.79,-262.32 407.9,-259.16 398.03,-255.32 397.79,-262.32"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a0579062b384e54b611b80c6337c7f2c8" target="_top" xlink:title="Utility function to lable the nodes so that heavy chains have a contigous lable.">
|
||||
<polygon fill="white" stroke="black" points="408,-180.5 408,-221.5 518,-221.5 518,-180.5 408,-180.5"/>
|
||||
<text text-anchor="start" x="416" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_labels</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node11 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node8->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M369.32,-235.68C378.77,-232.14 388.67,-228.44 398.34,-224.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="399.76,-228.02 407.9,-221.24 397.31,-221.47 399.76,-228.02"/>
|
||||
</g>
|
||||
<!-- Node12 -->
|
||||
<g id="node12" class="node">
|
||||
<title>Node12</title>
|
||||
<g id="a_node12"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a2dfbda148aad0bfaba2ebfda9ebc915a" target="_top" xlink:title="Utility function to assign highest parent that can be reached though heavy chains.">
|
||||
<polygon fill="white" stroke="black" points="408,-120.5 408,-161.5 518,-161.5 518,-120.5 408,-120.5"/>
|
||||
<text text-anchor="start" x="416" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_par</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node12 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node8->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M357.1,-235.34C361.33,-232.48 365.39,-229.36 369,-226 390.39,-206.1 383.38,-190.65 405,-171 406.28,-169.84 407.61,-168.7 408.99,-167.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="411.19,-170.33 417.25,-161.65 407.09,-164.65 411.19,-170.33"/>
|
||||
</g>
|
||||
<!-- Node13 -->
|
||||
<g id="node13" class="node">
|
||||
<title>Node13</title>
|
||||
<g id="a_node13"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ad22d760a5a33545a70e7ea5e1786c8dc" target="_top" xlink:title="This function must be called after the tree adjacency list and node values are populated The function...">
|
||||
<polygon fill="white" stroke="black" points="408,-360.5 408,-401.5 518,-401.5 518,-360.5 408,-360.5"/>
|
||||
<text text-anchor="start" x="416" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-378.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node8->Node13 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node8->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M351.9,-276.65C357.99,-280.95 363.95,-285.78 369,-291 390.61,-313.37 382.4,-329.63 405,-351 406.12,-352.06 407.28,-353.09 408.48,-354.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="406.72,-357.14 416.83,-360.31 410.9,-351.53 406.72,-357.14"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae8de7aefcb6635d3dacdd174cd4890c4" target="_top" xlink:title="Utility function to populate the t_par vector.">
|
||||
<polygon fill="white" stroke="black" points="557,-330.5 557,-371.5 667,-371.5 667,-330.5 557,-330.5"/>
|
||||
<text text-anchor="start" x="565" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="565" y="-348.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="612" y="-337.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node14 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node13->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M518.32,-369.91C527.67,-368.01 537.46,-366.01 547.03,-364.05"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="547.81,-367.47 556.9,-362.04 546.41,-360.61 547.81,-367.47"/>
|
||||
</g>
|
||||
<!-- Node15 -->
|
||||
<g id="node15" class="node">
|
||||
<title>Node15</title>
|
||||
<g id="a_node15"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" target="_top" xlink:title="Utility function to compute sub-tree sizes.">
|
||||
<polygon fill="white" stroke="black" points="557,-390.5 557,-431.5 667,-431.5 667,-390.5 557,-390.5"/>
|
||||
<text text-anchor="start" x="565" y="-419.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="565" y="-408.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="612" y="-397.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node13->Node15 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node13->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M518.32,-392.09C527.67,-393.99 537.46,-395.99 547.03,-397.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="546.41,-401.39 556.9,-399.96 547.81,-394.53 546.41,-401.39"/>
|
||||
</g>
|
||||
<!-- Node17 -->
|
||||
<g id="node17" class="node">
|
||||
<title>Node17</title>
|
||||
<g id="a_node17"><a xlink:href="../../d2/d8a/classrange__queries_1_1heavy__light__decomposition_1_1_h_l_d.html#a7d5b40c076347a6aabfb37a0590f2f24" target="_top" xlink:title="Utility function to break down a path query into two chain queries.">
|
||||
<polygon fill="white" stroke="black" points="408,-60.5 408,-101.5 518,-101.5 518,-60.5 408,-60.5"/>
|
||||
<text text-anchor="start" x="416" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-67.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::chain_query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node17 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node16->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M333.65,-175.44C350.98,-157.1 378.08,-130.25 405,-111 406.88,-109.65 408.84,-108.33 410.84,-107.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="413.12,-109.73 419.81,-101.52 409.46,-103.77 413.12,-109.73"/>
|
||||
</g>
|
||||
<!-- Node18 -->
|
||||
<g id="node18" class="node">
|
||||
<title>Node18</title>
|
||||
<g id="a_node18"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ae2b407e64aaf9878fbee7ee6efe9c7d4" target="_top" xlink:title="The function returns the least common ancestor of two nodes.">
|
||||
<polygon fill="white" stroke="black" points="408,-0.5 408,-41.5 518,-41.5 518,-0.5 408,-0.5"/>
|
||||
<text text-anchor="start" x="416" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node18 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node16->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M323.54,-175.37C337.02,-144.9 365.76,-87.55 405,-51 406.27,-49.82 407.59,-48.67 408.95,-47.56"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="411.16,-50.28 417.17,-41.56 407.03,-44.63 411.16,-50.28"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><a xlink:href="../../d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#ac7761255f2ba06b398b9aae5e4dce5f3" target="_top" xlink:title="The function lifts a node, k units up the tree. The lifting is done in place, and the result is store...">
|
||||
<polygon fill="white" stroke="black" points="557,-0.5 557,-41.5 667,-41.5 667,-0.5 557,-0.5"/>
|
||||
<text text-anchor="start" x="565" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="565" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="612" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lift</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node18->Node19 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node18->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M518.32,-21C527.57,-21 537.25,-21 546.73,-21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="546.9,-24.5 556.9,-21 546.9,-17.5 546.9,-24.5"/>
|
||||
</g>
|
||||
<!-- Node20->Node21 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node20->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M369.32,-579.13C382.36,-577 396.26,-574.73 409.22,-572.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="410.08,-576.02 419.38,-570.96 408.95,-569.11 410.08,-576.02"/>
|
||||
</g>
|
||||
<!-- Node23 -->
|
||||
<g id="node23" class="node">
|
||||
<title>Node23</title>
|
||||
<g id="a_node23"><a xlink:href="../../d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" target="_top" xlink:title="Update the value at a node.">
|
||||
<polygon fill="white" stroke="black" points="408,-469.5 408,-510.5 518,-510.5 518,-469.5 408,-469.5"/>
|
||||
<text text-anchor="start" x="416" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="416" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="463" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node22->Node23 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node22->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M369.32,-490C378.57,-490 388.25,-490 397.73,-490"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="397.9,-493.5 407.9,-490 397.9,-486.5 397.9,-493.5"/>
|
||||
</g>
|
||||
<!-- Node24->Node6 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node24->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.01,-461.81C217.13,-458.24 233.09,-453.54 249,-448.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="250.27,-452.13 258.87,-445.94 248.29,-445.41 250.27,-452.13"/>
|
||||
</g>
|
||||
<!-- Node24->Node7 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node24->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.25,-474.47C211.74,-477.37 218.38,-481.44 223,-487 261.57,-533.46 210.98,-581.4 259,-618 297.88,-647.64 330.78,-648.49 369,-618 425.3,-573.08 361.12,-517.11 405,-460 409.93,-453.58 416.64,-448.39 423.72,-444.25"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="425.51,-447.26 432.78,-439.55 422.29,-441.05 425.51,-447.26"/>
|
||||
</g>
|
||||
<!-- Node24->Node8 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node24->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.12,-460.87C211.46,-457.95 218.04,-454.05 223,-449 247.08,-424.51 283.61,-333.92 301.84,-286.07"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="305.17,-287.13 305.44,-276.54 298.63,-284.66 305.17,-287.13"/>
|
||||
</g>
|
||||
<!-- Node24->Node16 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node24->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.2,-461.99C211.85,-459.1 218.6,-454.93 223,-449 282.85,-368.4 201.33,-308.18 259,-226 259.54,-225.23 260.1,-224.48 260.69,-223.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="263.28,-226.11 267.81,-216.53 258.29,-221.2 263.28,-226.11"/>
|
||||
</g>
|
||||
<!-- Node24->Node20 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node24->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.34,-475.51C211.54,-478.41 217.99,-482.21 223,-487 247.16,-510.08 236.28,-528.5 259,-553 261.66,-555.87 264.6,-558.61 267.7,-561.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="265.58,-563.99 275.64,-567.32 269.86,-558.44 265.58,-563.99"/>
|
||||
</g>
|
||||
<!-- Node24->Node21 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node24->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.38,-474.36C211.89,-477.26 218.5,-481.34 223,-487 267.31,-542.68 203.32,-598.7 259,-643 297.26,-673.44 323.11,-659.86 369,-643 402.26,-630.78 431.75,-600.81 448.21,-581.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="450.96,-583.66 454.63,-573.71 445.56,-579.2 450.96,-583.66"/>
|
||||
</g>
|
||||
<!-- Node24->Node22 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node24->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.01,-471.58C217.13,-473.65 233.09,-476.37 249,-479.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="248.43,-482.54 258.87,-480.77 249.6,-475.64 248.43,-482.54"/>
|
||||
</g>
|
||||
<!-- Node25->Node6 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node25->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M203.87,-377.55C219.13,-384.89 240.93,-395.36 261.04,-405.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="259.6,-408.22 270.13,-409.4 262.63,-401.91 259.6,-408.22"/>
|
||||
</g>
|
||||
<!-- Node25->Node7 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node25->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M198.3,-358.38C231.22,-337.54 313.76,-292.92 369,-329 402.32,-350.76 375.59,-384.18 405,-411 406.72,-412.57 408.58,-414.01 410.53,-415.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="409.17,-418.58 419.6,-420.4 412.58,-412.47 409.17,-418.58"/>
|
||||
</g>
|
||||
<!-- Node25->Node8 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node25->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.16,-358.32C205.32,-343.03 232.45,-312.77 259,-291 262.55,-288.09 266.34,-285.22 270.22,-282.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="272.53,-285.1 278.77,-276.54 268.55,-279.34 272.53,-285.1"/>
|
||||
</g>
|
||||
<!-- Node25->Node16 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node25->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M186.98,-358.2C194.98,-333.33 219.02,-266.84 259,-226 260.06,-224.92 261.16,-223.87 262.3,-222.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="264.63,-225.47 270.3,-216.52 260.29,-219.98 264.63,-225.47"/>
|
||||
</g>
|
||||
<!-- Node25->Node20 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node25->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M194.96,-377.62C203.63,-385.76 215.49,-398.11 223,-411 248.7,-455.07 234.76,-475.11 259,-520 266.56,-534.01 277.08,-548.04 286.82,-559.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="284.23,-562.03 293.4,-567.33 289.53,-557.46 284.23,-562.03"/>
|
||||
</g>
|
||||
<!-- Node25->Node21 -->
|
||||
<g id="edge39" class="edge">
|
||||
<title>Node25->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M205.01,-365.12C242.78,-361.2 322.54,-358.81 369,-400 410.67,-436.94 373.45,-474.12 405,-520 412.99,-531.62 425.01,-541.55 435.96,-549.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="434.11,-551.98 444.41,-554.46 437.9,-546.1 434.11,-551.98"/>
|
||||
</g>
|
||||
<!-- Node25->Node22 -->
|
||||
<g id="edge40" class="edge">
|
||||
<title>Node25->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M193.28,-377.65C201.37,-386.2 213.31,-399.14 223,-411 240.1,-431.93 238.72,-442.14 259,-460 260.3,-461.15 261.65,-462.27 263.04,-463.36"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="261.19,-466.34 271.36,-469.32 265.27,-460.65 261.19,-466.34"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 31 KiB |
@@ -260,6 +260,7 @@ Math</h1>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/math/gcd_recursive_euclidean.cpp">Gcd Recursive Euclidean</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/math/large_factorial.cpp">Large Factorial</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/math/large_number.h">Large Number</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/math/lcm_sum.cpp">Lcm Sum</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/math/least_common_multiple.cpp">Least Common Multiple</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/math/miller_rabin.cpp">Miller Rabin</a></li>
|
||||
<li><a href="https://github.com/TheAlgorithms/C-Plus-Plus/blob/master/math/modular_inverse_fermat_little_theorem.cpp">Modular Inverse Fermat Little Theorem</a></li>
|
||||
|
||||
Reference in New Issue
Block a user