Documentation for c9d298fec6
@@ -377,10 +377,10 @@ Here is the call graph for this function:</div>
|
||||
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  </div>
|
||||
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < 2; i++) {</div>
|
||||
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << i + 1 << <span class="stringliteral">"/2 Checking for "</span> << y[i] << <span class="stringliteral">" --> "</span>;</div>
|
||||
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <span class="keywordtype">bool</span> result = <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j < 2 && !result; j++) {</div>
|
||||
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <span class="keywordtype">bool</span> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a> = <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j < 2 && !<a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>; j++) {</div>
|
||||
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>  <span class="keywordflow">if</span> (std::abs(y[i] - eig_vals[j]) < 0.1) {</div>
|
||||
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  result = <span class="keyword">true</span>;</div>
|
||||
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a> = <span class="keyword">true</span>;</div>
|
||||
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"("</span> << eig_vals[j] << <span class="stringliteral">") "</span>;</div>
|
||||
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  }</div>
|
||||
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>  }</div>
|
||||
@@ -433,10 +433,10 @@ Here is the call graph for this function:</div>
|
||||
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>  </div>
|
||||
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i = 0; i < 5; i++) {</div>
|
||||
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << i + 1 << <span class="stringliteral">"/5 Checking for "</span> << y[i] << <span class="stringliteral">" --> "</span>;</div>
|
||||
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  <span class="keywordtype">bool</span> result = <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j < 5 && !result; j++) {</div>
|
||||
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>  <span class="keywordtype">bool</span> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a> = <span class="keyword">false</span>;</div>
|
||||
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> j = 0; j < 5 && !<a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>; j++) {</div>
|
||||
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  <span class="keywordflow">if</span> (std::abs(y[i] - eig_vals[j]) < 0.1) {</div>
|
||||
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  result = <span class="keyword">true</span>;</div>
|
||||
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a> = <span class="keyword">true</span>;</div>
|
||||
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/io/basic_ostream.html">std::cout</a> << <span class="stringliteral">"("</span> << eig_vals[j] << <span class="stringliteral">") "</span>;</div>
|
||||
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  }</div>
|
||||
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  }</div>
|
||||
@@ -472,6 +472,7 @@ Here is the call graph for this function:</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>
|
||||
<div class="ttc" id="atime_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/chrono/c/time.html">std::time</a></div><div class="ttdeci">T time(T... args)</div></div>
|
||||
<div class="ttc" id="aqr__eigen__values_8cpp_html_aee57a411f07599034f5ceb8cc7d65b40"><div class="ttname"><a href="../../de/d75/qr__eigen__values_8cpp.html#aee57a411f07599034f5ceb8cc7d65b40">LIMS</a></div><div class="ttdeci">#define LIMS</div><div class="ttdef"><b>Definition:</b> qr_eigen_values.cpp:20</div></div>
|
||||
<div class="ttc" id="afibonacci__sum_8cpp_html_aadb40ac4c74a7efc0680b83eeee138aa"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">math::fibonacci_sum::result</a></div><div class="ttdeci">uint64_t result(uint64_t n)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:75</div></div>
|
||||
<!-- start footer part -->
|
||||
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
||||
<ul>
|
||||
|
||||
455
de/dc3/fibonacci__sum_8cpp.html
Normal file
@@ -0,0 +1,455 @@
|
||||
<!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/fibonacci_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('de/dc3/fibonacci__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="#typedef-members">Typedefs</a> |
|
||||
<a href="#func-members">Functions</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">fibonacci_sum.cpp File Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>An algorithm to calculate the sum of <a href="https://en.wikipedia.org/wiki/Fibonacci_number">Fibonacci Sequence</a>: \(\mathrm{F}(n) + \mathrm{F}(n+1) + .. + \mathrm{F}(m)\).
|
||||
<a href="#details">More...</a></p>
|
||||
<div class="textblock"><code>#include <cassert></code><br />
|
||||
<code>#include <iostream></code><br />
|
||||
<code>#include <vector></code><br />
|
||||
</div><div class="textblock"><div class="dynheader">
|
||||
Include dependency graph for fibonacci_sum.cpp:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../d7/d4a/fibonacci__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>
|
||||
<tr class="memitem:d3/dc9/namespacefibonacci__sum"><td class="memItemLeft" align="right" valign="top">  </td><td class="memItemRight" valign="bottom"><a class="el" href="../../d3/dc9/namespacefibonacci__sum.html">fibonacci_sum</a></td></tr>
|
||||
<tr class="memdesc:d3/dc9/namespacefibonacci__sum"><td class="mdescLeft"> </td><td class="mdescRight">Functions for the sum of the Fibonacci Sequence: \(\mathrm{F}(n) + \mathrm{F}(n+1) + .. + \mathrm{F}(m)\). <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="typedef-members"></a>
|
||||
Typedefs</h2></td></tr>
|
||||
<tr class="memitem:ae18ea07a8d7fe90ff25abb7c7d1ee5b1"><td class="memItemLeft" align="right" valign="top"><a id="ae18ea07a8d7fe90ff25abb7c7d1ee5b1"></a>
|
||||
using </td><td class="memItemRight" valign="bottom"><b>math::fibonacci_sum::matrix</b> = <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a>< uint64_t > ></td></tr>
|
||||
<tr class="separator:ae18ea07a8d7fe90ff25abb7c7d1ee5b1"><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:a9c83cca09a3e4ff2a25c816a9303448e"><td class="memItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/dc3/fibonacci__sum_8cpp.html#a9c83cca09a3e4ff2a25c816a9303448e">math::fibonacci_sum::multiply</a> (const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> &T, const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> &A)</td></tr>
|
||||
<tr class="separator:a9c83cca09a3e4ff2a25c816a9303448e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a7cf5feaf168b88e74544da59ed830311"><td class="memItemLeft" align="right" valign="top"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/dc3/fibonacci__sum_8cpp.html#a7cf5feaf168b88e74544da59ed830311">math::fibonacci_sum::power</a> (<a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> T, uint64_t ex)</td></tr>
|
||||
<tr class="separator:a7cf5feaf168b88e74544da59ed830311"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aadb40ac4c74a7efc0680b83eeee138aa"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">math::fibonacci_sum::result</a> (uint64_t n)</td></tr>
|
||||
<tr class="separator:aadb40ac4c74a7efc0680b83eeee138aa"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a493fbaa7a94e3b7ca573111237bb3742"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="../../de/dc3/fibonacci__sum_8cpp.html#a493fbaa7a94e3b7ca573111237bb3742">math::fibonacci_sum::fiboSum</a> (uint64_t n, uint64_t m)</td></tr>
|
||||
<tr class="separator:a493fbaa7a94e3b7ca573111237bb3742"><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="../../de/dc3/fibonacci__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="../../de/dc3/fibonacci__sum_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main</a> ()</td></tr>
|
||||
<tr class="memdesc:ae66f6b31b5ad750f1fe042a706a4e3d4"><td class="mdescLeft"> </td><td class="mdescRight">Main function. <a href="../../de/dc3/fibonacci__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 <a href="https://en.wikipedia.org/wiki/Fibonacci_number">Fibonacci Sequence</a>: \(\mathrm{F}(n) + \mathrm{F}(n+1) + .. + \mathrm{F}(m)\). </p>
|
||||
<p>An algorithm to calculate the sum of Fibonacci Sequence: \(\mathrm{F}(n) + \mathrm{F}(n+1) + .. + \mathrm{F}(m)\) where \(\mathrm{F}(i)\) denotes the i-th Fibonacci Number . Note that F(0) = 0 and F(1) = 1. The value of the sum is calculated using matrix exponentiation. Reference source: <a href="https://stackoverflow.com/questions/4357223/finding-the-sum-of-fibonacci-numbers">https://stackoverflow.com/questions/4357223/finding-the-sum-of-fibonacci-numbers</a> </p><dl class="section author"><dt>Author</dt><dd><a href="https://github.com/SarthakSahu1009">Sarthak Sahu</a> </dd></dl>
|
||||
</div><h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="a493fbaa7a94e3b7ca573111237bb3742"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a493fbaa7a94e3b7ca573111237bb3742">◆ </a></span>fiboSum()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">uint64_t math::fibonacci_sum::fiboSum </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">uint64_t </td>
|
||||
<td class="paramname"><em>n</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">uint64_t </td>
|
||||
<td class="paramname"><em>m</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Function to compute sum of fibonacci sequence from n to m. </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">n</td><td>start of sequence </td></tr>
|
||||
<tr><td class="paramname">m</td><td>end of sequence </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>uint64_t the sum of sequence </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  { </div>
|
||||
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  <span class="keywordflow">return</span> (<a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>(m + 2) - <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>(n + 1)); </div>
|
||||
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>  }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../de/dc3/fibonacci__sum_8cpp_a493fbaa7a94e3b7ca573111237bb3742_cgraph.svg" width="578" height="95"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<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="l00135"></a><span class="lineno"> 135</span>  {</div>
|
||||
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a>(); <span class="comment">// execute the tests</span></div>
|
||||
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  <span class="keywordflow">return</span> 0;</div>
|
||||
<div class="line"><a name="l00138"></a><span class="lineno"> 138</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="../../de/dc3/fibonacci__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="a9c83cca09a3e4ff2a25c816a9303448e"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a9c83cca09a3e4ff2a25c816a9303448e">◆ </a></span>multiply()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> math::fibonacci_sum::multiply </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> & </td>
|
||||
<td class="paramname"><em>T</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const <a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> & </td>
|
||||
<td class="paramname"><em>A</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Function to multiply two matrices </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">T</td><td>matrix 1 </td></tr>
|
||||
<tr><td class="paramname">A</td><td>martix 2 </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>resultant matrix </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  {</div>
|
||||
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>(2, <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector<uint64_t></a>(2, 0));</div>
|
||||
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  </div>
|
||||
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  <span class="comment">// multiplying matrices</span></div>
|
||||
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>[0][0] = T[0][0]*A[0][0] + T[0][1]*A[1][0];</div>
|
||||
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>[0][1] = T[0][0]*A[0][1] + T[0][1]*A[1][1];</div>
|
||||
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>[1][0] = T[1][0]*A[0][0] + T[1][1]*A[1][0];</div>
|
||||
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>[1][1] = T[1][0]*A[0][1] + T[1][1]*A[1][1];</div>
|
||||
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  </div>
|
||||
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="keywordflow">return</span> <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">result</a>;</div>
|
||||
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../de/dc3/fibonacci__sum_8cpp_a9c83cca09a3e4ff2a25c816a9303448e_cgraph.svg" width="578" height="95"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a7cf5feaf168b88e74544da59ed830311"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a7cf5feaf168b88e74544da59ed830311">◆ </a></span>power()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> math::fibonacci_sum::power </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype"><a class="elRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> </td>
|
||||
<td class="paramname"><em>T</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">uint64_t </td>
|
||||
<td class="paramname"><em>ex</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Function to compute A^n where A is a matrix. </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">T</td><td>matrix </td></tr>
|
||||
<tr><td class="paramname">ex</td><td>power </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>resultant matrix </dd></dl>
|
||||
<div class="fragment"><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  {</div>
|
||||
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> A{{1, 1}, {1, 0}};</div>
|
||||
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <span class="keywordflow">if</span> (ex == 0 || ex == 1) {</div>
|
||||
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="keywordflow">return</span> T;</div>
|
||||
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  }</div>
|
||||
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  </div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  T = <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#a7cf5feaf168b88e74544da59ed830311">power</a>(T, ex / 2);</div>
|
||||
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  T = <a class="code" href="../../d8/d77/namespacemachine__learning.html#a7491744dcfc8844338d55065d0cd0c79">multiply</a>(T, T);</div>
|
||||
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  <span class="keywordflow">if</span> (ex & 1) {</div>
|
||||
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  T = <a class="code" href="../../d8/d77/namespacemachine__learning.html#a7491744dcfc8844338d55065d0cd0c79">multiply</a>(T, A);</div>
|
||||
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  }</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  <span class="keywordflow">return</span> T;</div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../de/dc3/fibonacci__sum_8cpp_a7cf5feaf168b88e74544da59ed830311_cgraph.svg" width="387" height="52"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="aadb40ac4c74a7efc0680b83eeee138aa"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aadb40ac4c74a7efc0680b83eeee138aa">◆ </a></span>result()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">uint64_t math::fibonacci_sum::result </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">uint64_t </td>
|
||||
<td class="paramname"><em>n</em></td><td>)</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Function to compute sum of fibonacci sequence from 0 to n. </p><dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramname">n</td><td>number </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>uint64_t ans, the sum of sequence </dd></dl>
|
||||
<div class="fragment"><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>  <a class="codeRef" target="_blank" href="http://en.cppreference.com/w/cpp/container/vector.html">math::fibonacci_sum::matrix</a> T{{1, 1}, {1, 0}};</div>
|
||||
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  T = <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#a7cf5feaf168b88e74544da59ed830311">power</a>(T, n);</div>
|
||||
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  uint64_t <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a> = T[0][1];</div>
|
||||
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a> = (<a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a> - 1);</div>
|
||||
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keywordflow">return</span> <a class="code" href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a>;</div>
|
||||
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  }</div>
|
||||
</div><!-- fragment --><div class="dynheader">
|
||||
Here is the call graph for this function:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center"><iframe scrolling="no" frameborder="0" src="../../de/dc3/fibonacci__sum_8cpp_aadb40ac4c74a7efc0680b83eeee138aa_cgraph.svg" width="387" height="95"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
|
||||
</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 fiboSum 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="l00100"></a><span class="lineno"> 100</span>  {</div>
|
||||
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  uint64_t n = 0, m = 3;</div>
|
||||
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  uint64_t <a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817">test_1</a> = <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#a493fbaa7a94e3b7ca573111237bb3742">math::fibonacci_sum::fiboSum</a>(n, m);</div>
|
||||
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  assert(<a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817">test_1</a> == 4);</div>
|
||||
<div class="line"><a name="l00104"></a><span class="lineno"> 104</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="l00105"></a><span class="lineno"> 105</span>  </div>
|
||||
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  n = 3;</div>
|
||||
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  m = 5;</div>
|
||||
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>  uint64_t <a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d">test_2</a> = <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#a493fbaa7a94e3b7ca573111237bb3742">math::fibonacci_sum::fiboSum</a>(n, m);</div>
|
||||
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  assert(<a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d">test_2</a> == 10);</div>
|
||||
<div class="line"><a name="l00110"></a><span class="lineno"> 110</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="l00111"></a><span class="lineno"> 111</span>  </div>
|
||||
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  n = 5;</div>
|
||||
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  m = 7;</div>
|
||||
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  uint64_t <a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a">test_3</a> = <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#a493fbaa7a94e3b7ca573111237bb3742">math::fibonacci_sum::fiboSum</a>(n, m);</div>
|
||||
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  assert(<a class="code" href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a">test_3</a> == 26);</div>
|
||||
<div class="line"><a name="l00116"></a><span class="lineno"> 116</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="l00117"></a><span class="lineno"> 117</span>  </div>
|
||||
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  n = 7;</div>
|
||||
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  m = 10;</div>
|
||||
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  uint64_t test_4 = <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#a493fbaa7a94e3b7ca573111237bb3742">math::fibonacci_sum::fiboSum</a>(n, m);</div>
|
||||
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  assert(test_4 == 123);</div>
|
||||
<div class="line"><a name="l00122"></a><span class="lineno"> 122</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="l00123"></a><span class="lineno"> 123</span>  </div>
|
||||
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  n = 9;</div>
|
||||
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  m = 12;</div>
|
||||
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>  uint64_t test_5 = <a class="code" href="../../de/dc3/fibonacci__sum_8cpp.html#a493fbaa7a94e3b7ca573111237bb3742">math::fibonacci_sum::fiboSum</a>(n, m);</div>
|
||||
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  assert(test_5 == 322);</div>
|
||||
<div class="line"><a name="l00128"></a><span class="lineno"> 128</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="l00129"></a><span class="lineno"> 129</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="../../de/dc3/fibonacci__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="afibonacci__sum_8cpp_html_a7cf5feaf168b88e74544da59ed830311"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#a7cf5feaf168b88e74544da59ed830311">math::fibonacci_sum::power</a></div><div class="ttdeci">math::fibonacci_sum::matrix power(math::fibonacci_sum::matrix T, uint64_t ex)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:56</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="avector_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/container/vector.html">std::vector</a></div><div class="ttdoc">STL class.</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="amatrix__exponentiation_8cpp_html_ad8389ed58fd0ec66df248014775ad1fa"><div class="ttname"><a href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa">ans</a></div><div class="ttdeci">ll ans(ll n)</div><div class="ttdef"><b>Definition:</b> matrix_exponentiation.cpp:91</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="afibonacci__sum_8cpp_html_a493fbaa7a94e3b7ca573111237bb3742"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#a493fbaa7a94e3b7ca573111237bb3742">math::fibonacci_sum::fiboSum</a></div><div class="ttdeci">uint64_t fiboSum(uint64_t n, uint64_t m)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:89</div></div>
|
||||
<div class="ttc" id="afibonacci__sum_8cpp_html_aa8dca7b867074164d5f45b0f3851269d"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d">test</a></div><div class="ttdeci">static void test()</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:100</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>
|
||||
<div class="ttc" id="anamespacemachine__learning_html_a7491744dcfc8844338d55065d0cd0c79"><div class="ttname"><a href="../../d8/d77/namespacemachine__learning.html#a7491744dcfc8844338d55065d0cd0c79">machine_learning::multiply</a></div><div class="ttdeci">std::vector< std::valarray< T > > multiply(const std::vector< std::valarray< T >> &A, const std::vector< std::valarray< T >> &B)</div><div class="ttdef"><b>Definition:</b> vector_ops.hpp:460</div></div>
|
||||
<div class="ttc" id="afibonacci__sum_8cpp_html_aadb40ac4c74a7efc0680b83eeee138aa"><div class="ttname"><a href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa">math::fibonacci_sum::result</a></div><div class="ttdeci">uint64_t result(uint64_t n)</div><div class="ttdef"><b>Definition:</b> fibonacci_sum.cpp:75</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="../../de/dc3/fibonacci__sum_8cpp.html">fibonacci_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>
|
||||
10
de/dc3/fibonacci__sum_8cpp.js
Normal file
@@ -0,0 +1,10 @@
|
||||
var fibonacci__sum_8cpp =
|
||||
[
|
||||
[ "matrix", "de/dc3/fibonacci__sum_8cpp.html#ae18ea07a8d7fe90ff25abb7c7d1ee5b1", null ],
|
||||
[ "fiboSum", "de/dc3/fibonacci__sum_8cpp.html#a493fbaa7a94e3b7ca573111237bb3742", null ],
|
||||
[ "main", "de/dc3/fibonacci__sum_8cpp.html#ae66f6b31b5ad750f1fe042a706a4e3d4", null ],
|
||||
[ "multiply", "de/dc3/fibonacci__sum_8cpp.html#a9c83cca09a3e4ff2a25c816a9303448e", null ],
|
||||
[ "power", "de/dc3/fibonacci__sum_8cpp.html#a7cf5feaf168b88e74544da59ed830311", null ],
|
||||
[ "result", "de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa", null ],
|
||||
[ "test", "de/dc3/fibonacci__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d", null ]
|
||||
];
|
||||
@@ -0,0 +1,6 @@
|
||||
<map id="math::fibonacci_sum::fiboSum" name="math::fibonacci_sum::fiboSum">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,29,148,71"/>
|
||||
<area shape="rect" id="node2" href="$de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa" title=" " alt="" coords="196,29,339,71"/>
|
||||
<area shape="rect" id="node3" href="$d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa" title=" " alt="" coords="529,37,572,63"/>
|
||||
<area shape="rect" id="node4" href="$dd/d47/namespacemath.html#afcd07701d73ed65cd616bcba02737f3d" title="This function calculates a raised to exponent b under modulo c using modular exponentiation." alt="" coords="387,62,481,89"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
39507ca36cf8f7d0a341aa07dd1a0f6a
|
||||
@@ -0,0 +1,87 @@
|
||||
<?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: math::fibonacci_sum::fiboSum Pages: 1 -->
|
||||
<svg width="433pt" height="71pt"
|
||||
viewBox="0.00 0.00 433.00 70.50" 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 66.5)">
|
||||
<title>math::fibonacci_sum::fiboSum</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-66.5 429,-66.5 429,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,-14 0,-44 107,-44 107,-14 0,-14"/>
|
||||
<text text-anchor="start" x="8" y="-32" font-family="Helvetica,sans-Serif" font-size="10.00">math::fibonacci_sum</text>
|
||||
<text text-anchor="middle" x="53.5" y="-21" font-family="Helvetica,sans-Serif" font-size="10.00">::fiboSum</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node1 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node1</title>
|
||||
<path fill="none" stroke="midnightblue" d="M28.75,-44.16C22.79,-53.56 31.04,-62.5 53.5,-62.5 67.19,-62.5 75.6,-59.18 78.73,-54.46"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="82.21,-53.98 78.25,-44.16 75.22,-54.31 82.21,-53.98"/>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="143,-14 143,-44 250,-44 250,-14 143,-14"/>
|
||||
<text text-anchor="start" x="151" y="-32" font-family="Helvetica,sans-Serif" font-size="10.00">math::fibonacci_sum</text>
|
||||
<text text-anchor="middle" x="196.5" y="-21" font-family="Helvetica,sans-Serif" font-size="10.00">::result</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107,-29C115.44,-29 124.26,-29 132.9,-29"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="132.95,-32.5 142.95,-29 132.95,-25.5 132.95,-32.5"/>
|
||||
</g>
|
||||
<!-- Node2->Node2 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node2->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M174.89,-44.16C169.68,-53.56 176.88,-62.5 196.5,-62.5 208.45,-62.5 215.8,-59.18 218.53,-54.46"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="222.02,-54.01 218.11,-44.16 215.02,-54.29 222.02,-54.01"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="393,-19.5 393,-38.5 425,-38.5 425,-19.5 393,-19.5"/>
|
||||
<text text-anchor="middle" x="409" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">ans</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M250.08,-29C292.31,-29 349.78,-29 382.48,-29"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="382.55,-32.5 392.55,-29 382.55,-25.5 382.55,-32.5"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../dd/d47/namespacemath.html#afcd07701d73ed65cd616bcba02737f3d" target="_top" xlink:title="This function calculates a raised to exponent b under modulo c using modular exponentiation.">
|
||||
<polygon fill="white" stroke="black" points="286,-0.5 286,-19.5 357,-19.5 357,-0.5 286,-0.5"/>
|
||||
<text text-anchor="middle" x="321.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::power</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node4 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node2->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M250.02,-20.89C258.65,-19.55 267.53,-18.18 275.95,-16.88"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="276.59,-20.32 285.94,-15.34 275.52,-13.41 276.59,-20.32"/>
|
||||
</g>
|
||||
<!-- Node4->Node3 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node4->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M357.28,-17.73C365.89,-19.64 374.95,-21.66 383,-23.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="382.34,-26.88 392.86,-25.64 383.86,-20.05 382.34,-26.88"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.4 KiB |
@@ -0,0 +1,5 @@
|
||||
<map id="math::fibonacci_sum::power" name="math::fibonacci_sum::power">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,5,148,47"/>
|
||||
<area shape="rect" id="node2" href="$dd/d47/namespacemath.html#afcd07701d73ed65cd616bcba02737f3d" title="This function calculates a raised to exponent b under modulo c using modular exponentiation." alt="" coords="196,13,291,39"/>
|
||||
<area shape="rect" id="node3" href="$d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa" title=" " alt="" coords="339,13,381,39"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
28fbe4a5ff50d003f788e864201a0b34
|
||||
@@ -0,0 +1,53 @@
|
||||
<?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: math::fibonacci_sum::power Pages: 1 -->
|
||||
<svg width="290pt" height="39pt"
|
||||
viewBox="0.00 0.00 290.00 39.00" 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 35)">
|
||||
<title>math::fibonacci_sum::power</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-35 286,-35 286,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,-0.5 0,-30.5 107,-30.5 107,-0.5 0,-0.5"/>
|
||||
<text text-anchor="start" x="8" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::fibonacci_sum</text>
|
||||
<text text-anchor="middle" x="53.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::power</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../dd/d47/namespacemath.html#afcd07701d73ed65cd616bcba02737f3d" target="_top" xlink:title="This function calculates a raised to exponent b under modulo c using modular exponentiation.">
|
||||
<polygon fill="white" stroke="black" points="143,-6 143,-25 214,-25 214,-6 143,-6"/>
|
||||
<text text-anchor="middle" x="178.5" y="-13" font-family="Helvetica,sans-Serif" font-size="10.00">math::power</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.02,-15.5C115.56,-15.5 124.33,-15.5 132.67,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="132.94,-19 142.94,-15.5 132.94,-12 132.94,-19"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="250,-6 250,-25 282,-25 282,-6 250,-6"/>
|
||||
<text text-anchor="middle" x="266" y="-13" font-family="Helvetica,sans-Serif" font-size="10.00">ans</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M214.28,-15.5C222.79,-15.5 231.75,-15.5 239.73,-15.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="239.86,-19 249.86,-15.5 239.86,-12 239.86,-19"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.5 KiB |
@@ -0,0 +1,6 @@
|
||||
<map id="math::fibonacci_sum::multiply" name="math::fibonacci_sum::multiply">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,29,148,71"/>
|
||||
<area shape="rect" id="node2" href="$de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa" title=" " alt="" coords="196,29,339,71"/>
|
||||
<area shape="rect" id="node3" href="$d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa" title=" " alt="" coords="529,37,572,63"/>
|
||||
<area shape="rect" id="node4" href="$dd/d47/namespacemath.html#afcd07701d73ed65cd616bcba02737f3d" title="This function calculates a raised to exponent b under modulo c using modular exponentiation." alt="" coords="387,62,481,89"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
c152e08192989b0e857de14f526d7caa
|
||||
@@ -0,0 +1,81 @@
|
||||
<?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: math::fibonacci_sum::multiply Pages: 1 -->
|
||||
<svg width="433pt" height="71pt"
|
||||
viewBox="0.00 0.00 433.00 70.50" 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 66.5)">
|
||||
<title>math::fibonacci_sum::multiply</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-66.5 429,-66.5 429,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,-14 0,-44 107,-44 107,-14 0,-14"/>
|
||||
<text text-anchor="start" x="8" y="-32" font-family="Helvetica,sans-Serif" font-size="10.00">math::fibonacci_sum</text>
|
||||
<text text-anchor="middle" x="53.5" y="-21" font-family="Helvetica,sans-Serif" font-size="10.00">::multiply</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../de/dc3/fibonacci__sum_8cpp.html#aadb40ac4c74a7efc0680b83eeee138aa" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="143,-14 143,-44 250,-44 250,-14 143,-14"/>
|
||||
<text text-anchor="start" x="151" y="-32" font-family="Helvetica,sans-Serif" font-size="10.00">math::fibonacci_sum</text>
|
||||
<text text-anchor="middle" x="196.5" y="-21" font-family="Helvetica,sans-Serif" font-size="10.00">::result</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107,-29C115.44,-29 124.26,-29 132.9,-29"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="132.95,-32.5 142.95,-29 132.95,-25.5 132.95,-32.5"/>
|
||||
</g>
|
||||
<!-- Node2->Node2 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node2->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M174.89,-44.16C169.68,-53.56 176.88,-62.5 196.5,-62.5 208.45,-62.5 215.8,-59.18 218.53,-54.46"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="222.02,-54.01 218.11,-44.16 215.02,-54.29 222.02,-54.01"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="393,-19.5 393,-38.5 425,-38.5 425,-19.5 393,-19.5"/>
|
||||
<text text-anchor="middle" x="409" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">ans</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node2->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M250.08,-29C292.31,-29 349.78,-29 382.48,-29"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="382.55,-32.5 392.55,-29 382.55,-25.5 382.55,-32.5"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><a xlink:href="../../dd/d47/namespacemath.html#afcd07701d73ed65cd616bcba02737f3d" target="_top" xlink:title="This function calculates a raised to exponent b under modulo c using modular exponentiation.">
|
||||
<polygon fill="white" stroke="black" points="286,-0.5 286,-19.5 357,-19.5 357,-0.5 286,-0.5"/>
|
||||
<text text-anchor="middle" x="321.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::power</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node2->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M250.02,-20.89C258.65,-19.55 267.53,-18.18 275.95,-16.88"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="276.59,-20.32 285.94,-15.34 275.52,-13.41 276.59,-20.32"/>
|
||||
</g>
|
||||
<!-- Node4->Node3 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node4->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M357.28,-17.73C365.89,-19.64 374.95,-21.66 383,-23.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="382.34,-26.88 392.86,-25.64 383.86,-20.05 382.34,-26.88"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.0 KiB |
@@ -0,0 +1,25 @@
|
||||
<map id="test" name="test">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,275,49,302"/>
|
||||
<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="97,199,169,226"/>
|
||||
<area shape="rect" id="node3" href="$d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" title=" " alt="" coords="104,250,163,277"/>
|
||||
<area shape="rect" id="node22" href="$d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" title=" " alt="" coords="104,301,163,327"/>
|
||||
<area shape="rect" id="node23" href="$d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" title=" " alt="" coords="104,383,163,410"/>
|
||||
<area shape="rect" id="node4" 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="217,286,364,342"/>
|
||||
<area shape="rect" id="node5" 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="412,301,567,327"/>
|
||||
<area shape="rect" id="node6" 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="217,518,364,574"/>
|
||||
<area shape="rect" id="node14" 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="217,598,364,654"/>
|
||||
<area shape="rect" id="node18" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#a04cd96efaba147b19d3afc769b90ff70" title="Set the values for all the nodes." alt="" coords="217,75,364,131"/>
|
||||
<area shape="rect" id="node19" href="/Users/runner/work/C-Plus-Plus/C-Plus-Plus/doc/cppreference-doxygen-web.tag.xml$cpp/container/vector/size.html#" title=" " alt="" coords="431,122,547,149"/>
|
||||
<area shape="rect" id="node20" 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="217,206,364,262"/>
|
||||
<area shape="rect" id="node7" 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="416,431,563,487"/>
|
||||
<area shape="rect" id="node8" 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="416,511,563,567"/>
|
||||
<area shape="rect" id="node9" 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="416,591,563,647"/>
|
||||
<area shape="rect" id="node10" 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="416,671,563,727"/>
|
||||
<area shape="rect" id="node11" 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="416,351,563,407"/>
|
||||
<area shape="rect" id="node12" 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="615,391,761,447"/>
|
||||
<area shape="rect" id="node13" href="$d1/d51/classrange__queries_1_1heavy__light__decomposition_1_1_tree.html#aa339c31ec74cd86a4842a8b09653d460" title="Utility function to compute sub-tree sizes." alt="" coords="615,311,761,367"/>
|
||||
<area shape="rect" id="node15" 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="416,751,563,807"/>
|
||||
<area shape="rect" id="node16" 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="416,831,563,887"/>
|
||||
<area shape="rect" id="node17" 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="615,831,761,887"/>
|
||||
<area shape="rect" id="node21" href="$d9/d35/classrange__queries_1_1heavy__light__decomposition_1_1_s_g.html#a3c75bf5770790f8eba8cc92227b5400c" title="Update the value at a node." alt="" coords="416,206,563,262"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
02f4e4d378db5d6a565edc72bcec01af
|
||||
@@ -0,0 +1,568 @@
|
||||
<?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 = 575;
|
||||
var viewHeight = 670;
|
||||
var sectionId = 'dynsection-6';
|
||||
</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 571,-665.58 571,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,-439.5 0,-458.5 33,-458.5 33,-439.5 0,-439.5"/>
|
||||
<text text-anchor="middle" x="16.5" y="-446.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="69,-496.5 69,-515.5 123,-515.5 123,-496.5 69,-496.5"/>
|
||||
<text text-anchor="middle" x="96" y="-503.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="M30.61,-458.7C41.01,-466.39 55.92,-477.4 69,-487 70.43,-488.05 71.89,-489.12 73.38,-490.21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="71.63,-493.27 81.76,-496.35 75.76,-487.62 71.63,-493.27"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-458.5 74,-477.5 118,-477.5 118,-458.5 74,-458.5"/>
|
||||
<text text-anchor="middle" x="96" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.18,-452.84C42.03,-455.01 53.4,-457.8 63.98,-460.39"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="63.21,-463.81 73.76,-462.79 64.88,-457.01 63.21,-463.81"/>
|
||||
</g>
|
||||
<!-- Node22 -->
|
||||
<g id="node22" class="node">
|
||||
<title>Node22</title>
|
||||
<g id="a_node22"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-420.5 74,-439.5 118,-439.5 118,-420.5 74,-420.5"/>
|
||||
<text text-anchor="middle" x="96" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node22 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node1->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.18,-445.16C42.03,-442.99 53.4,-440.2 63.98,-437.61"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="64.88,-440.99 73.76,-435.21 63.21,-434.19 64.88,-440.99"/>
|
||||
</g>
|
||||
<!-- Node23 -->
|
||||
<g id="node23" class="node">
|
||||
<title>Node23</title>
|
||||
<g id="a_node23"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-358.5 74,-377.5 118,-377.5 118,-358.5 74,-358.5"/>
|
||||
<text text-anchor="middle" x="96" y="-365.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node23 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node1->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M26.69,-439.39C39.51,-425.99 62.95,-401.49 78.75,-384.98"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="81.43,-387.24 85.82,-377.6 76.38,-382.4 81.43,-387.24"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><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="159,-409.5 159,-450.5 269,-450.5 269,-409.5 159,-409.5"/>
|
||||
<text text-anchor="start" x="167" y="-438.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="167" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="214" y="-416.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::add_edge</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.01,-461.12C126.98,-458.18 137.99,-454.57 149.29,-450.87"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="150.4,-454.19 158.81,-447.75 148.22,-447.54 150.4,-454.19"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><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="305,-420.5 305,-439.5 421,-439.5 421,-420.5 305,-420.5"/>
|
||||
<text text-anchor="middle" x="363" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node5 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node3->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M113.64,-477.58C117.14,-480.24 120.52,-483.41 123,-487 157.29,-536.7 110.98,-581.4 159,-618 197.88,-647.64 230.78,-648.49 269,-618 325.3,-573.08 261.12,-517.11 305,-460 309.93,-453.58 316.64,-448.39 323.72,-444.25"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="325.51,-447.26 332.78,-439.55 322.29,-441.05 325.51,-447.26"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><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="159,-235.5 159,-276.5 269,-276.5 269,-235.5 159,-235.5"/>
|
||||
<text text-anchor="start" x="167" y="-264.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="167" y="-253.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="214" y="-242.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node3->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M112.94,-458.31C116.56,-455.61 120.16,-452.46 123,-449 164.23,-398.84 191.25,-326.68 204.15,-286.3"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="207.49,-287.34 207.12,-276.75 200.81,-285.26 207.49,-287.34"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><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="159,-175.5 159,-216.5 269,-216.5 269,-175.5 159,-175.5"/>
|
||||
<text text-anchor="start" x="167" y="-204.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="167" y="-193.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="214" y="-182.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node14 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node3->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M114.19,-458.4C117.59,-455.77 120.78,-452.62 123,-449 175.47,-363.41 101.33,-308.18 159,-226 159.54,-225.23 160.1,-224.48 160.69,-223.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="163.28,-226.11 167.81,-216.53 158.29,-221.2 163.28,-226.11"/>
|
||||
</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#a04cd96efaba147b19d3afc769b90ff70" target="_top" xlink:title="Set the values for all the nodes.">
|
||||
<polygon fill="white" stroke="black" points="159,-567.5 159,-608.5 269,-608.5 269,-567.5 159,-567.5"/>
|
||||
<text text-anchor="start" x="167" y="-596.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="167" y="-585.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="214" y="-574.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::set_node_val</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node18 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node3->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M112.52,-477.62C116.23,-480.36 119.98,-483.55 123,-487 145.02,-512.13 136.28,-528.5 159,-553 161.66,-555.87 164.6,-558.61 167.7,-561.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="165.58,-563.99 175.64,-567.32 169.86,-558.44 165.58,-563.99"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><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="319.5,-554.5 319.5,-573.5 406.5,-573.5 406.5,-554.5 319.5,-554.5"/>
|
||||
<text text-anchor="middle" x="363" y="-561.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node19 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node3->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M113.75,-477.5C117.25,-480.17 120.6,-483.36 123,-487 162.19,-546.39 103.32,-598.7 159,-643 197.26,-673.44 223.11,-659.86 269,-643 302.26,-630.78 331.75,-600.81 348.21,-581.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="350.96,-583.66 354.63,-573.71 345.56,-579.2 350.96,-583.66"/>
|
||||
</g>
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><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="159,-469.5 159,-510.5 269,-510.5 269,-469.5 159,-469.5"/>
|
||||
<text text-anchor="start" x="167" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="167" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="214" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node20 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node3->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.01,-471.98C126.89,-473.67 137.77,-475.73 148.95,-477.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.33,-481.3 158.81,-479.72 149.64,-474.42 148.33,-481.3"/>
|
||||
</g>
|
||||
<!-- Node4->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node4->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M269.32,-430C277.58,-430 286.18,-430 294.67,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="294.95,-433.5 304.95,-430 294.95,-426.5 294.95,-433.5"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><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="308,-300.5 308,-341.5 418,-341.5 418,-300.5 308,-300.5"/>
|
||||
<text text-anchor="start" x="316" y="-329.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-318.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-307.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::combine</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node6->Node7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node6->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M261.51,-276.57C275.66,-282.82 291.35,-289.76 306.05,-296.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="304.98,-299.61 315.54,-300.46 307.81,-293.21 304.98,-299.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#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="308,-240.5 308,-281.5 418,-281.5 418,-240.5 308,-240.5"/>
|
||||
<text text-anchor="start" x="316" y="-269.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-258.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_hc</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node6->Node8 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node6->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M269.32,-257.85C278.57,-258.16 288.25,-258.49 297.73,-258.81"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="297.79,-262.32 307.9,-259.16 298.03,-255.32 297.79,-262.32"/>
|
||||
</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#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="308,-180.5 308,-221.5 418,-221.5 418,-180.5 308,-180.5"/>
|
||||
<text text-anchor="start" x="316" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_labels</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node6->Node9 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node6->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M269.32,-235.68C278.77,-232.14 288.67,-228.44 298.34,-224.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="299.76,-228.02 307.9,-221.24 297.31,-221.47 299.76,-228.02"/>
|
||||
</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#a2dfbda148aad0bfaba2ebfda9ebc915a" target="_top" xlink:title="Utility function to assign highest parent that can be reached though heavy chains.">
|
||||
<polygon fill="white" stroke="black" points="308,-120.5 308,-161.5 418,-161.5 418,-120.5 308,-120.5"/>
|
||||
<text text-anchor="start" x="316" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_par</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node6->Node10 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node6->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M257.1,-235.34C261.33,-232.48 265.39,-229.36 269,-226 290.39,-206.1 283.38,-190.65 305,-171 306.28,-169.84 307.61,-168.7 308.99,-167.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="311.19,-170.33 317.25,-161.65 307.09,-164.65 311.19,-170.33"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><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="308,-360.5 308,-401.5 418,-401.5 418,-360.5 308,-360.5"/>
|
||||
<text text-anchor="start" x="316" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-378.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node6->Node11 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node6->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M251.9,-276.65C257.99,-280.95 263.95,-285.78 269,-291 290.61,-313.37 282.4,-329.63 305,-351 306.12,-352.06 307.28,-353.09 308.48,-354.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="306.72,-357.14 316.83,-360.31 310.9,-351.53 306.72,-357.14"/>
|
||||
</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#ae8de7aefcb6635d3dacdd174cd4890c4" target="_top" xlink:title="Utility function to populate the t_par vector.">
|
||||
<polygon fill="white" stroke="black" points="457,-330.5 457,-371.5 567,-371.5 567,-330.5 457,-330.5"/>
|
||||
<text text-anchor="start" x="465" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="465" y="-348.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="512" y="-337.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node11->Node12 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node11->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M418.32,-369.91C427.67,-368.01 437.46,-366.01 447.03,-364.05"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="447.81,-367.47 456.9,-362.04 446.41,-360.61 447.81,-367.47"/>
|
||||
</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#aa339c31ec74cd86a4842a8b09653d460" target="_top" xlink:title="Utility function to compute sub-tree sizes.">
|
||||
<polygon fill="white" stroke="black" points="457,-390.5 457,-431.5 567,-431.5 567,-390.5 457,-390.5"/>
|
||||
<text text-anchor="start" x="465" y="-419.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="465" y="-408.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="512" y="-397.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node11->Node13 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node11->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M418.32,-392.09C427.67,-393.99 437.46,-395.99 447.03,-397.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="446.41,-401.39 456.9,-399.96 447.81,-394.53 446.41,-401.39"/>
|
||||
</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#a7d5b40c076347a6aabfb37a0590f2f24" target="_top" xlink:title="Utility function to break down a path query into two chain queries.">
|
||||
<polygon fill="white" stroke="black" points="308,-60.5 308,-101.5 418,-101.5 418,-60.5 308,-60.5"/>
|
||||
<text text-anchor="start" x="316" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-67.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::chain_query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node14->Node15 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node14->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M233.65,-175.44C250.98,-157.1 278.08,-130.25 305,-111 306.88,-109.65 308.84,-108.33 310.84,-107.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="313.12,-109.73 319.81,-101.52 309.46,-103.77 313.12,-109.73"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><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="308,-0.5 308,-41.5 418,-41.5 418,-0.5 308,-0.5"/>
|
||||
<text text-anchor="start" x="316" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node14->Node16 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node14->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M223.54,-175.37C237.02,-144.9 265.76,-87.55 305,-51 306.27,-49.82 307.59,-48.67 308.95,-47.56"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="311.16,-50.28 317.17,-41.56 307.03,-44.63 311.16,-50.28"/>
|
||||
</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#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="457,-0.5 457,-41.5 567,-41.5 567,-0.5 457,-0.5"/>
|
||||
<text text-anchor="start" x="465" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="465" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="512" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lift</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node17 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node16->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M418.32,-21C427.57,-21 437.25,-21 446.73,-21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="446.9,-24.5 456.9,-21 446.9,-17.5 446.9,-24.5"/>
|
||||
</g>
|
||||
<!-- Node18->Node19 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node18->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M269.32,-579.13C282.36,-577 296.26,-574.73 309.22,-572.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="310.08,-576.02 319.38,-570.96 308.95,-569.11 310.08,-576.02"/>
|
||||
</g>
|
||||
<!-- Node21 -->
|
||||
<g id="node21" class="node">
|
||||
<title>Node21</title>
|
||||
<g id="a_node21"><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="308,-469.5 308,-510.5 418,-510.5 418,-469.5 308,-469.5"/>
|
||||
<text text-anchor="start" x="316" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node20->Node21 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node20->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M269.32,-490C278.57,-490 288.25,-490 297.73,-490"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="297.9,-493.5 307.9,-490 297.9,-486.5 297.9,-493.5"/>
|
||||
</g>
|
||||
<!-- Node22->Node4 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node22->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.01,-430C126.8,-430 137.55,-430 148.61,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.81,-433.5 158.81,-430 148.81,-426.5 148.81,-433.5"/>
|
||||
</g>
|
||||
<!-- Node22->Node5 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node22->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M112.08,-420.3C124.21,-413.11 141.98,-403.9 159,-400 206.65,-389.08 220.7,-392.4 269,-400 271.91,-400.46 299.03,-409.25 323.23,-417.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="322.41,-420.61 333,-420.41 324.6,-413.96 322.41,-420.61"/>
|
||||
</g>
|
||||
<!-- Node22->Node6 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node22->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M103.4,-420.4C120.36,-394.96 166.95,-325.07 193.61,-285.08"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="196.66,-286.82 199.3,-276.56 190.84,-282.94 196.66,-286.82"/>
|
||||
</g>
|
||||
<!-- Node22->Node14 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node22->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M104.17,-420.23C110.03,-411.82 118.12,-399.14 123,-387 150.33,-318.96 115.1,-284.73 159,-226 159.56,-225.25 160.15,-224.51 160.76,-223.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="163.32,-226.18 168.03,-216.69 158.43,-221.18 163.32,-226.18"/>
|
||||
</g>
|
||||
<!-- Node22->Node18 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node22->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M113.47,-439.7C116.98,-442.36 120.41,-445.49 123,-449 152.07,-488.34 128.84,-514.49 159,-553 161.1,-555.68 163.47,-558.22 166.01,-560.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="164.14,-563.62 174.05,-567.35 168.63,-558.25 164.14,-563.62"/>
|
||||
</g>
|
||||
<!-- Node22->Node19 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node22->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M112.59,-439.56C116.3,-442.3 120.03,-445.51 123,-449 145.91,-475.96 131,-498.38 159,-520 182.08,-537.82 257.01,-550.68 309.07,-557.74"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="308.78,-561.24 319.16,-559.08 309.7,-554.3 308.78,-561.24"/>
|
||||
</g>
|
||||
<!-- Node22->Node20 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node22->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M115.38,-439.51C128.55,-446.32 146.93,-455.82 164.19,-464.76"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="162.6,-467.87 173.09,-469.36 165.81,-461.65 162.6,-467.87"/>
|
||||
</g>
|
||||
<!-- Node23->Node4 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node23->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M114.87,-377.55C128.29,-384.73 147.34,-394.9 165.08,-404.39"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="163.74,-407.64 174.21,-409.27 167.04,-401.47 163.74,-407.64"/>
|
||||
</g>
|
||||
<!-- Node23->Node5 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node23->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.93,-358.4C119.64,-348.81 139.21,-334.71 159,-329 205.97,-315.45 228.07,-302.27 269,-329 302.32,-350.76 275.59,-384.18 305,-411 306.72,-412.57 308.58,-414.01 310.53,-415.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="309.17,-418.58 319.6,-420.4 312.58,-412.47 309.17,-418.58"/>
|
||||
</g>
|
||||
<!-- Node23->Node6 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node23->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M103.39,-358.17C113.78,-342.68 135.55,-312.15 159,-291 162.17,-288.14 165.6,-285.35 169.14,-282.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="171.44,-285.34 177.53,-276.67 167.36,-279.65 171.44,-285.34"/>
|
||||
</g>
|
||||
<!-- Node23->Node14 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node23->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M98.99,-358.2C104.46,-333.32 121.91,-266.81 159,-226 159.87,-225.04 160.78,-224.1 161.73,-223.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="164.1,-225.77 169.5,-216.66 159.59,-220.41 164.1,-225.77"/>
|
||||
</g>
|
||||
<!-- Node23->Node18 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node23->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M103.64,-377.56C109.33,-386.05 117.46,-398.95 123,-411 144.33,-457.34 134.76,-475.11 159,-520 166.56,-534.01 177.08,-548.04 186.82,-559.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.23,-562.03 193.4,-567.33 189.53,-557.46 184.23,-562.03"/>
|
||||
</g>
|
||||
<!-- Node23->Node19 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node23->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.25,-365.47C154.05,-362.47 226.62,-361.95 269,-400 310.43,-437.2 273.45,-474.12 305,-520 312.99,-531.62 325.01,-541.55 335.96,-549.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="334.11,-551.98 344.41,-554.46 337.9,-546.1 334.11,-551.98"/>
|
||||
</g>
|
||||
<!-- Node23->Node20 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node23->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M102.75,-377.72C115.25,-398.64 144.88,-447.04 159,-460 160.28,-461.17 161.61,-462.31 162.98,-463.43"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="161.09,-466.38 171.22,-469.48 165.23,-460.74 161.09,-466.38"/>
|
||||
</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="fibonacci__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: 34 KiB |
@@ -0,0 +1,480 @@
|
||||
<?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="575pt" height="670pt"
|
||||
viewBox="0.00 0.00 575.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 571,-665.58 571,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,-439.5 0,-458.5 33,-458.5 33,-439.5 0,-439.5"/>
|
||||
<text text-anchor="middle" x="16.5" y="-446.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="69,-496.5 69,-515.5 123,-515.5 123,-496.5 69,-496.5"/>
|
||||
<text text-anchor="middle" x="96" y="-503.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="M30.61,-458.7C41.01,-466.39 55.92,-477.4 69,-487 70.43,-488.05 71.89,-489.12 73.38,-490.21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="71.63,-493.27 81.76,-496.35 75.76,-487.62 71.63,-493.27"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-458.5 74,-477.5 118,-477.5 118,-458.5 74,-458.5"/>
|
||||
<text text-anchor="middle" x="96" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.18,-452.84C42.03,-455.01 53.4,-457.8 63.98,-460.39"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="63.21,-463.81 73.76,-462.79 64.88,-457.01 63.21,-463.81"/>
|
||||
</g>
|
||||
<!-- Node22 -->
|
||||
<g id="node22" class="node">
|
||||
<title>Node22</title>
|
||||
<g id="a_node22"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-420.5 74,-439.5 118,-439.5 118,-420.5 74,-420.5"/>
|
||||
<text text-anchor="middle" x="96" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node22 -->
|
||||
<g id="edge23" class="edge">
|
||||
<title>Node1->Node22</title>
|
||||
<path fill="none" stroke="midnightblue" d="M33.18,-445.16C42.03,-442.99 53.4,-440.2 63.98,-437.61"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="64.88,-440.99 73.76,-435.21 63.21,-434.19 64.88,-440.99"/>
|
||||
</g>
|
||||
<!-- Node23 -->
|
||||
<g id="node23" class="node">
|
||||
<title>Node23</title>
|
||||
<g id="a_node23"><a xlink:href="../../d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-358.5 74,-377.5 118,-377.5 118,-358.5 74,-358.5"/>
|
||||
<text text-anchor="middle" x="96" y="-365.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node23 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node1->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M26.69,-439.39C39.51,-425.99 62.95,-401.49 78.75,-384.98"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="81.43,-387.24 85.82,-377.6 76.38,-382.4 81.43,-387.24"/>
|
||||
</g>
|
||||
<!-- Node4 -->
|
||||
<g id="node4" class="node">
|
||||
<title>Node4</title>
|
||||
<g id="a_node4"><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="159,-409.5 159,-450.5 269,-450.5 269,-409.5 159,-409.5"/>
|
||||
<text text-anchor="start" x="167" y="-438.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="167" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="214" y="-416.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::add_edge</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.01,-461.12C126.98,-458.18 137.99,-454.57 149.29,-450.87"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="150.4,-454.19 158.81,-447.75 148.22,-447.54 150.4,-454.19"/>
|
||||
</g>
|
||||
<!-- Node5 -->
|
||||
<g id="node5" class="node">
|
||||
<title>Node5</title>
|
||||
<g id="a_node5"><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="305,-420.5 305,-439.5 421,-439.5 421,-420.5 305,-420.5"/>
|
||||
<text text-anchor="middle" x="363" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::push_back</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node5 -->
|
||||
<g id="edge13" class="edge">
|
||||
<title>Node3->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M113.64,-477.58C117.14,-480.24 120.52,-483.41 123,-487 157.29,-536.7 110.98,-581.4 159,-618 197.88,-647.64 230.78,-648.49 269,-618 325.3,-573.08 261.12,-517.11 305,-460 309.93,-453.58 316.64,-448.39 323.72,-444.25"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="325.51,-447.26 332.78,-439.55 322.29,-441.05 325.51,-447.26"/>
|
||||
</g>
|
||||
<!-- Node6 -->
|
||||
<g id="node6" class="node">
|
||||
<title>Node6</title>
|
||||
<g id="a_node6"><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="159,-235.5 159,-276.5 269,-276.5 269,-235.5 159,-235.5"/>
|
||||
<text text-anchor="start" x="167" y="-264.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="167" y="-253.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="214" y="-242.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node3->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M112.94,-458.31C116.56,-455.61 120.16,-452.46 123,-449 164.23,-398.84 191.25,-326.68 204.15,-286.3"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="207.49,-287.34 207.12,-276.75 200.81,-285.26 207.49,-287.34"/>
|
||||
</g>
|
||||
<!-- Node14 -->
|
||||
<g id="node14" class="node">
|
||||
<title>Node14</title>
|
||||
<g id="a_node14"><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="159,-175.5 159,-216.5 269,-216.5 269,-175.5 159,-175.5"/>
|
||||
<text text-anchor="start" x="167" y="-204.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="167" y="-193.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="214" y="-182.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node14 -->
|
||||
<g id="edge14" class="edge">
|
||||
<title>Node3->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M114.19,-458.4C117.59,-455.77 120.78,-452.62 123,-449 175.47,-363.41 101.33,-308.18 159,-226 159.54,-225.23 160.1,-224.48 160.69,-223.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="163.28,-226.11 167.81,-216.53 158.29,-221.2 163.28,-226.11"/>
|
||||
</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#a04cd96efaba147b19d3afc769b90ff70" target="_top" xlink:title="Set the values for all the nodes.">
|
||||
<polygon fill="white" stroke="black" points="159,-567.5 159,-608.5 269,-608.5 269,-567.5 159,-567.5"/>
|
||||
<text text-anchor="start" x="167" y="-596.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="167" y="-585.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="214" y="-574.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::set_node_val</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node18 -->
|
||||
<g id="edge18" class="edge">
|
||||
<title>Node3->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M112.52,-477.62C116.23,-480.36 119.98,-483.55 123,-487 145.02,-512.13 136.28,-528.5 159,-553 161.66,-555.87 164.6,-558.61 167.7,-561.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="165.58,-563.99 175.64,-567.32 169.86,-558.44 165.58,-563.99"/>
|
||||
</g>
|
||||
<!-- Node19 -->
|
||||
<g id="node19" class="node">
|
||||
<title>Node19</title>
|
||||
<g id="a_node19"><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="319.5,-554.5 319.5,-573.5 406.5,-573.5 406.5,-554.5 319.5,-554.5"/>
|
||||
<text text-anchor="middle" x="363" y="-561.5" font-family="Helvetica,sans-Serif" font-size="10.00">std::vector::size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node19 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node3->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M113.75,-477.5C117.25,-480.17 120.6,-483.36 123,-487 162.19,-546.39 103.32,-598.7 159,-643 197.26,-673.44 223.11,-659.86 269,-643 302.26,-630.78 331.75,-600.81 348.21,-581.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="350.96,-583.66 354.63,-573.71 345.56,-579.2 350.96,-583.66"/>
|
||||
</g>
|
||||
<!-- Node20 -->
|
||||
<g id="node20" class="node">
|
||||
<title>Node20</title>
|
||||
<g id="a_node20"><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="159,-469.5 159,-510.5 269,-510.5 269,-469.5 159,-469.5"/>
|
||||
<text text-anchor="start" x="167" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="167" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="214" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node3->Node20 -->
|
||||
<g id="edge21" class="edge">
|
||||
<title>Node3->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.01,-471.98C126.89,-473.67 137.77,-475.73 148.95,-477.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.33,-481.3 158.81,-479.72 149.64,-474.42 148.33,-481.3"/>
|
||||
</g>
|
||||
<!-- Node4->Node5 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node4->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M269.32,-430C277.58,-430 286.18,-430 294.67,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="294.95,-433.5 304.95,-430 294.95,-426.5 294.95,-433.5"/>
|
||||
</g>
|
||||
<!-- Node7 -->
|
||||
<g id="node7" class="node">
|
||||
<title>Node7</title>
|
||||
<g id="a_node7"><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="308,-300.5 308,-341.5 418,-341.5 418,-300.5 308,-300.5"/>
|
||||
<text text-anchor="start" x="316" y="-329.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-318.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-307.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::combine</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node6->Node7 -->
|
||||
<g id="edge6" class="edge">
|
||||
<title>Node6->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M261.51,-276.57C275.66,-282.82 291.35,-289.76 306.05,-296.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="304.98,-299.61 315.54,-300.46 307.81,-293.21 304.98,-299.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#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="308,-240.5 308,-281.5 418,-281.5 418,-240.5 308,-240.5"/>
|
||||
<text text-anchor="start" x="316" y="-269.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-258.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-247.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_hc</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node6->Node8 -->
|
||||
<g id="edge7" class="edge">
|
||||
<title>Node6->Node8</title>
|
||||
<path fill="none" stroke="midnightblue" d="M269.32,-257.85C278.57,-258.16 288.25,-258.49 297.73,-258.81"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="297.79,-262.32 307.9,-259.16 298.03,-255.32 297.79,-262.32"/>
|
||||
</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#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="308,-180.5 308,-221.5 418,-221.5 418,-180.5 308,-180.5"/>
|
||||
<text text-anchor="start" x="316" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-187.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_labels</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node6->Node9 -->
|
||||
<g id="edge8" class="edge">
|
||||
<title>Node6->Node9</title>
|
||||
<path fill="none" stroke="midnightblue" d="M269.32,-235.68C278.77,-232.14 288.67,-228.44 298.34,-224.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="299.76,-228.02 307.9,-221.24 297.31,-221.47 299.76,-228.02"/>
|
||||
</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#a2dfbda148aad0bfaba2ebfda9ebc915a" target="_top" xlink:title="Utility function to assign highest parent that can be reached though heavy chains.">
|
||||
<polygon fill="white" stroke="black" points="308,-120.5 308,-161.5 418,-161.5 418,-120.5 308,-120.5"/>
|
||||
<text text-anchor="start" x="316" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-127.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::dfs_par</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node6->Node10 -->
|
||||
<g id="edge9" class="edge">
|
||||
<title>Node6->Node10</title>
|
||||
<path fill="none" stroke="midnightblue" d="M257.1,-235.34C261.33,-232.48 265.39,-229.36 269,-226 290.39,-206.1 283.38,-190.65 305,-171 306.28,-169.84 307.61,-168.7 308.99,-167.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="311.19,-170.33 317.25,-161.65 307.09,-164.65 311.19,-170.33"/>
|
||||
</g>
|
||||
<!-- Node11 -->
|
||||
<g id="node11" class="node">
|
||||
<title>Node11</title>
|
||||
<g id="a_node11"><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="308,-360.5 308,-401.5 418,-401.5 418,-360.5 308,-360.5"/>
|
||||
<text text-anchor="start" x="316" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-378.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-367.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::init</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node6->Node11 -->
|
||||
<g id="edge10" class="edge">
|
||||
<title>Node6->Node11</title>
|
||||
<path fill="none" stroke="midnightblue" d="M251.9,-276.65C257.99,-280.95 263.95,-285.78 269,-291 290.61,-313.37 282.4,-329.63 305,-351 306.12,-352.06 307.28,-353.09 308.48,-354.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="306.72,-357.14 316.83,-360.31 310.9,-351.53 306.72,-357.14"/>
|
||||
</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#ae8de7aefcb6635d3dacdd174cd4890c4" target="_top" xlink:title="Utility function to populate the t_par vector.">
|
||||
<polygon fill="white" stroke="black" points="457,-330.5 457,-371.5 567,-371.5 567,-330.5 457,-330.5"/>
|
||||
<text text-anchor="start" x="465" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="465" y="-348.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="512" y="-337.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node11->Node12 -->
|
||||
<g id="edge11" class="edge">
|
||||
<title>Node11->Node12</title>
|
||||
<path fill="none" stroke="midnightblue" d="M418.32,-369.91C427.67,-368.01 437.46,-366.01 447.03,-364.05"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="447.81,-367.47 456.9,-362.04 446.41,-360.61 447.81,-367.47"/>
|
||||
</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#aa339c31ec74cd86a4842a8b09653d460" target="_top" xlink:title="Utility function to compute sub-tree sizes.">
|
||||
<polygon fill="white" stroke="black" points="457,-390.5 457,-431.5 567,-431.5 567,-390.5 457,-390.5"/>
|
||||
<text text-anchor="start" x="465" y="-419.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="465" y="-408.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="512" y="-397.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::dfs_size</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node11->Node13 -->
|
||||
<g id="edge12" class="edge">
|
||||
<title>Node11->Node13</title>
|
||||
<path fill="none" stroke="midnightblue" d="M418.32,-392.09C427.67,-393.99 437.46,-395.99 447.03,-397.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="446.41,-401.39 456.9,-399.96 447.81,-394.53 446.41,-401.39"/>
|
||||
</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#a7d5b40c076347a6aabfb37a0590f2f24" target="_top" xlink:title="Utility function to break down a path query into two chain queries.">
|
||||
<polygon fill="white" stroke="black" points="308,-60.5 308,-101.5 418,-101.5 418,-60.5 308,-60.5"/>
|
||||
<text text-anchor="start" x="316" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-67.5" font-family="Helvetica,sans-Serif" font-size="10.00">::HLD::chain_query</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node14->Node15 -->
|
||||
<g id="edge15" class="edge">
|
||||
<title>Node14->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M233.65,-175.44C250.98,-157.1 278.08,-130.25 305,-111 306.88,-109.65 308.84,-108.33 310.84,-107.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="313.12,-109.73 319.81,-101.52 309.46,-103.77 313.12,-109.73"/>
|
||||
</g>
|
||||
<!-- Node16 -->
|
||||
<g id="node16" class="node">
|
||||
<title>Node16</title>
|
||||
<g id="a_node16"><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="308,-0.5 308,-41.5 418,-41.5 418,-0.5 308,-0.5"/>
|
||||
<text text-anchor="start" x="316" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lca</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node14->Node16 -->
|
||||
<g id="edge16" class="edge">
|
||||
<title>Node14->Node16</title>
|
||||
<path fill="none" stroke="midnightblue" d="M223.54,-175.37C237.02,-144.9 265.76,-87.55 305,-51 306.27,-49.82 307.59,-48.67 308.95,-47.56"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="311.16,-50.28 317.17,-41.56 307.03,-44.63 311.16,-50.28"/>
|
||||
</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#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="457,-0.5 457,-41.5 567,-41.5 567,-0.5 457,-0.5"/>
|
||||
<text text-anchor="start" x="465" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="465" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="512" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">::Tree::lift</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node16->Node17 -->
|
||||
<g id="edge17" class="edge">
|
||||
<title>Node16->Node17</title>
|
||||
<path fill="none" stroke="midnightblue" d="M418.32,-21C427.57,-21 437.25,-21 446.73,-21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="446.9,-24.5 456.9,-21 446.9,-17.5 446.9,-24.5"/>
|
||||
</g>
|
||||
<!-- Node18->Node19 -->
|
||||
<g id="edge19" class="edge">
|
||||
<title>Node18->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M269.32,-579.13C282.36,-577 296.26,-574.73 309.22,-572.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="310.08,-576.02 319.38,-570.96 308.95,-569.11 310.08,-576.02"/>
|
||||
</g>
|
||||
<!-- Node21 -->
|
||||
<g id="node21" class="node">
|
||||
<title>Node21</title>
|
||||
<g id="a_node21"><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="308,-469.5 308,-510.5 418,-510.5 418,-469.5 308,-469.5"/>
|
||||
<text text-anchor="start" x="316" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="316" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="363" y="-476.5" font-family="Helvetica,sans-Serif" font-size="10.00">::SG::update</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node20->Node21 -->
|
||||
<g id="edge22" class="edge">
|
||||
<title>Node20->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M269.32,-490C278.57,-490 288.25,-490 297.73,-490"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="297.9,-493.5 307.9,-490 297.9,-486.5 297.9,-493.5"/>
|
||||
</g>
|
||||
<!-- Node22->Node4 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node22->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.01,-430C126.8,-430 137.55,-430 148.61,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="148.81,-433.5 158.81,-430 148.81,-426.5 148.81,-433.5"/>
|
||||
</g>
|
||||
<!-- Node22->Node5 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node22->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M112.08,-420.3C124.21,-413.11 141.98,-403.9 159,-400 206.65,-389.08 220.7,-392.4 269,-400 271.91,-400.46 299.03,-409.25 323.23,-417.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="322.41,-420.61 333,-420.41 324.6,-413.96 322.41,-420.61"/>
|
||||
</g>
|
||||
<!-- Node22->Node6 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node22->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M103.4,-420.4C120.36,-394.96 166.95,-325.07 193.61,-285.08"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="196.66,-286.82 199.3,-276.56 190.84,-282.94 196.66,-286.82"/>
|
||||
</g>
|
||||
<!-- Node22->Node14 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node22->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M104.17,-420.23C110.03,-411.82 118.12,-399.14 123,-387 150.33,-318.96 115.1,-284.73 159,-226 159.56,-225.25 160.15,-224.51 160.76,-223.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="163.32,-226.18 168.03,-216.69 158.43,-221.18 163.32,-226.18"/>
|
||||
</g>
|
||||
<!-- Node22->Node18 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node22->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M113.47,-439.7C116.98,-442.36 120.41,-445.49 123,-449 152.07,-488.34 128.84,-514.49 159,-553 161.1,-555.68 163.47,-558.22 166.01,-560.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="164.14,-563.62 174.05,-567.35 168.63,-558.25 164.14,-563.62"/>
|
||||
</g>
|
||||
<!-- Node22->Node19 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node22->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M112.59,-439.56C116.3,-442.3 120.03,-445.51 123,-449 145.91,-475.96 131,-498.38 159,-520 182.08,-537.82 257.01,-550.68 309.07,-557.74"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="308.78,-561.24 319.16,-559.08 309.7,-554.3 308.78,-561.24"/>
|
||||
</g>
|
||||
<!-- Node22->Node20 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node22->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M115.38,-439.51C128.55,-446.32 146.93,-455.82 164.19,-464.76"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="162.6,-467.87 173.09,-469.36 165.81,-461.65 162.6,-467.87"/>
|
||||
</g>
|
||||
<!-- Node23->Node4 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node23->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M114.87,-377.55C128.29,-384.73 147.34,-394.9 165.08,-404.39"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="163.74,-407.64 174.21,-409.27 167.04,-401.47 163.74,-407.64"/>
|
||||
</g>
|
||||
<!-- Node23->Node5 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node23->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.93,-358.4C119.64,-348.81 139.21,-334.71 159,-329 205.97,-315.45 228.07,-302.27 269,-329 302.32,-350.76 275.59,-384.18 305,-411 306.72,-412.57 308.58,-414.01 310.53,-415.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="309.17,-418.58 319.6,-420.4 312.58,-412.47 309.17,-418.58"/>
|
||||
</g>
|
||||
<!-- Node23->Node6 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node23->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M103.39,-358.17C113.78,-342.68 135.55,-312.15 159,-291 162.17,-288.14 165.6,-285.35 169.14,-282.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="171.44,-285.34 177.53,-276.67 167.36,-279.65 171.44,-285.34"/>
|
||||
</g>
|
||||
<!-- Node23->Node14 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node23->Node14</title>
|
||||
<path fill="none" stroke="midnightblue" d="M98.99,-358.2C104.46,-333.32 121.91,-266.81 159,-226 159.87,-225.04 160.78,-224.1 161.73,-223.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="164.1,-225.77 169.5,-216.66 159.59,-220.41 164.1,-225.77"/>
|
||||
</g>
|
||||
<!-- Node23->Node18 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node23->Node18</title>
|
||||
<path fill="none" stroke="midnightblue" d="M103.64,-377.56C109.33,-386.05 117.46,-398.95 123,-411 144.33,-457.34 134.76,-475.11 159,-520 166.56,-534.01 177.08,-548.04 186.82,-559.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="184.23,-562.03 193.4,-567.33 189.53,-557.46 184.23,-562.03"/>
|
||||
</g>
|
||||
<!-- Node23->Node19 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node23->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M118.25,-365.47C154.05,-362.47 226.62,-361.95 269,-400 310.43,-437.2 273.45,-474.12 305,-520 312.99,-531.62 325.01,-541.55 335.96,-549.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="334.11,-551.98 344.41,-554.46 337.9,-546.1 334.11,-551.98"/>
|
||||
</g>
|
||||
<!-- Node23->Node20 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node23->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M102.75,-377.72C115.25,-398.64 144.88,-447.04 159,-460 160.28,-461.17 161.61,-462.31 162.98,-463.43"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="161.09,-466.38 171.22,-469.48 165.23,-460.74 161.09,-466.38"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 29 KiB |
@@ -0,0 +1,5 @@
|
||||
<map id="math::fibonacci_sum::result" name="math::fibonacci_sum::result">
|
||||
<area shape="rect" id="node1" title=" " alt="" coords="5,29,148,71"/>
|
||||
<area shape="rect" id="node2" href="$d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa" title=" " alt="" coords="339,37,381,63"/>
|
||||
<area shape="rect" id="node3" href="$dd/d47/namespacemath.html#afcd07701d73ed65cd616bcba02737f3d" title="This function calculates a raised to exponent b under modulo c using modular exponentiation." alt="" coords="196,62,291,89"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
24cbb10673c944ca53abca57479ffb70
|
||||
@@ -0,0 +1,65 @@
|
||||
<?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: math::fibonacci_sum::result Pages: 1 -->
|
||||
<svg width="290pt" height="71pt"
|
||||
viewBox="0.00 0.00 290.00 70.50" 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 66.5)">
|
||||
<title>math::fibonacci_sum::result</title>
|
||||
<polygon fill="white" stroke="transparent" points="-4,4 -4,-66.5 286,-66.5 286,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,-14 0,-44 107,-44 107,-14 0,-14"/>
|
||||
<text text-anchor="start" x="8" y="-32" font-family="Helvetica,sans-Serif" font-size="10.00">math::fibonacci_sum</text>
|
||||
<text text-anchor="middle" x="53.5" y="-21" font-family="Helvetica,sans-Serif" font-size="10.00">::result</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node1 -->
|
||||
<g id="edge4" class="edge">
|
||||
<title>Node1->Node1</title>
|
||||
<path fill="none" stroke="midnightblue" d="M31.89,-44.16C26.68,-53.56 33.88,-62.5 53.5,-62.5 65.45,-62.5 72.8,-59.18 75.53,-54.46"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="79.02,-54.01 75.11,-44.16 72.02,-54.29 79.02,-54.01"/>
|
||||
</g>
|
||||
<!-- Node2 -->
|
||||
<g id="node2" class="node">
|
||||
<title>Node2</title>
|
||||
<g id="a_node2"><a xlink:href="../../d7/d35/matrix__exponentiation_8cpp.html#ad8389ed58fd0ec66df248014775ad1fa" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="250,-19.5 250,-38.5 282,-38.5 282,-19.5 250,-19.5"/>
|
||||
<text text-anchor="middle" x="266" y="-26.5" font-family="Helvetica,sans-Serif" font-size="10.00">ans</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node2 -->
|
||||
<g id="edge1" class="edge">
|
||||
<title>Node1->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.08,-29C149.31,-29 206.78,-29 239.48,-29"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="239.55,-32.5 249.55,-29 239.55,-25.5 239.55,-32.5"/>
|
||||
</g>
|
||||
<!-- Node3 -->
|
||||
<g id="node3" class="node">
|
||||
<title>Node3</title>
|
||||
<g id="a_node3"><a xlink:href="../../dd/d47/namespacemath.html#afcd07701d73ed65cd616bcba02737f3d" target="_top" xlink:title="This function calculates a raised to exponent b under modulo c using modular exponentiation.">
|
||||
<polygon fill="white" stroke="black" points="143,-0.5 143,-19.5 214,-19.5 214,-0.5 143,-0.5"/>
|
||||
<text text-anchor="middle" x="178.5" y="-7.5" font-family="Helvetica,sans-Serif" font-size="10.00">math::power</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node1->Node3 -->
|
||||
<g id="edge2" class="edge">
|
||||
<title>Node1->Node3</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.02,-20.89C115.65,-19.55 124.53,-18.18 132.95,-16.88"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="133.59,-20.32 142.94,-15.34 132.52,-13.41 133.59,-20.32"/>
|
||||
</g>
|
||||
<!-- Node3->Node2 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node3->Node2</title>
|
||||
<path fill="none" stroke="midnightblue" d="M214.28,-17.73C222.89,-19.64 231.95,-21.66 240,-23.44"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="239.34,-26.88 249.86,-25.64 240.86,-20.05 239.34,-26.88"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.2 KiB |
@@ -0,0 +1,26 @@
|
||||
<map id="main" name="main">
|
||||
<area shape="rect" id="node1" title="Main function." alt="" coords="5,275,56,302"/>
|
||||
<area shape="rect" id="node2" href="$de/dc3/fibonacci__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d" title=" " alt="" coords="104,275,148,302"/>
|
||||
<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="196,199,268,226"/>
|
||||
<area shape="rect" id="node4" href="$d2/de9/heavy__light__decomposition_8cpp.html#a34b8683a2b429de5cce57e6d733ec817" title=" " alt="" coords="203,250,261,277"/>
|
||||
<area shape="rect" id="node23" href="$d2/de9/heavy__light__decomposition_8cpp.html#a458410412185a5f09199deaff7157a8d" title=" " alt="" coords="203,301,261,327"/>
|
||||
<area shape="rect" id="node24" href="$d2/de9/heavy__light__decomposition_8cpp.html#af31ec5409537703d9c8a47350386b32a" title=" " alt="" coords="203,383,261,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="316,286,463,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="511,301,665,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="316,518,463,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="316,598,463,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="316,75,463,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="530,122,646,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="316,206,463,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="515,431,661,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="515,511,661,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="515,591,661,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="515,671,661,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="515,351,661,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="713,391,860,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="713,311,860,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="515,751,661,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="515,831,661,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="713,831,860,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="515,206,661,262"/>
|
||||
</map>
|
||||
@@ -0,0 +1 @@
|
||||
8c60d2da45114da12325b254d563a907
|
||||
@@ -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: 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 = 649;
|
||||
var viewHeight = 670;
|
||||
var sectionId = 'dynsection-2';
|
||||
</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 645,-665.58 645,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,-439.5 0,-458.5 38,-458.5 38,-439.5 0,-439.5"/>
|
||||
<text text-anchor="middle" x="19" y="-446.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="../../de/dc3/fibonacci__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-439.5 74,-458.5 107,-458.5 107,-439.5 74,-439.5"/>
|
||||
<text text-anchor="middle" x="90.5" y="-446.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,-449C46.07,-449 55.31,-449 63.79,-449"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="63.95,-452.5 73.95,-449 63.95,-445.5 63.95,-452.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="143,-496.5 143,-515.5 197,-515.5 197,-496.5 143,-496.5"/>
|
||||
<text text-anchor="middle" x="170" y="-503.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="M104.61,-458.7C115.01,-466.39 129.92,-477.4 143,-487 144.43,-488.05 145.89,-489.12 147.38,-490.21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="145.63,-493.27 155.76,-496.35 149.76,-487.62 145.63,-493.27"/>
|
||||
</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="148,-458.5 148,-477.5 192,-477.5 192,-458.5 148,-458.5"/>
|
||||
<text text-anchor="middle" x="170" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node2->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.18,-452.84C116.03,-455.01 127.4,-457.8 137.98,-460.39"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="137.21,-463.81 147.76,-462.79 138.88,-457.01 137.21,-463.81"/>
|
||||
</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="148,-420.5 148,-439.5 192,-439.5 192,-420.5 148,-420.5"/>
|
||||
<text text-anchor="middle" x="170" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node23 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node2->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.18,-445.16C116.03,-442.99 127.4,-440.2 137.98,-437.61"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="138.88,-440.99 147.76,-435.21 137.21,-434.19 138.88,-440.99"/>
|
||||
</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="148,-358.5 148,-377.5 192,-377.5 192,-358.5 148,-358.5"/>
|
||||
<text text-anchor="middle" x="170" y="-365.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node24 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node2->Node24</title>
|
||||
<path fill="none" stroke="midnightblue" d="M100.69,-439.39C113.51,-425.99 136.95,-401.49 152.75,-384.98"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="155.43,-387.24 159.82,-377.6 150.38,-382.4 155.43,-387.24"/>
|
||||
</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="233,-409.5 233,-450.5 343,-450.5 343,-409.5 233,-409.5"/>
|
||||
<text text-anchor="start" x="241" y="-438.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="241" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="288" 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="M192.01,-461.12C200.98,-458.18 211.99,-454.57 223.29,-450.87"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="224.4,-454.19 232.81,-447.75 222.22,-447.54 224.4,-454.19"/>
|
||||
</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="379,-420.5 379,-439.5 495,-439.5 495,-420.5 379,-420.5"/>
|
||||
<text text-anchor="middle" x="437" 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="M187.64,-477.58C191.14,-480.24 194.52,-483.41 197,-487 231.29,-536.7 184.98,-581.4 233,-618 271.88,-647.64 304.78,-648.49 343,-618 399.3,-573.08 335.12,-517.11 379,-460 383.93,-453.58 390.64,-448.39 397.72,-444.25"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="399.51,-447.26 406.78,-439.55 396.29,-441.05 399.51,-447.26"/>
|
||||
</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="233,-235.5 233,-276.5 343,-276.5 343,-235.5 233,-235.5"/>
|
||||
<text text-anchor="start" x="241" y="-264.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="241" y="-253.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="288" 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="M186.94,-458.31C190.56,-455.61 194.16,-452.46 197,-449 238.23,-398.84 265.25,-326.68 278.15,-286.3"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="281.49,-287.34 281.12,-276.75 274.81,-285.26 281.49,-287.34"/>
|
||||
</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="233,-175.5 233,-216.5 343,-216.5 343,-175.5 233,-175.5"/>
|
||||
<text text-anchor="start" x="241" y="-204.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="241" y="-193.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="288" 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="M188.19,-458.4C191.59,-455.77 194.78,-452.62 197,-449 249.47,-363.41 175.33,-308.18 233,-226 233.54,-225.23 234.1,-224.48 234.69,-223.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="237.28,-226.11 241.81,-216.53 232.29,-221.2 237.28,-226.11"/>
|
||||
</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="233,-567.5 233,-608.5 343,-608.5 343,-567.5 233,-567.5"/>
|
||||
<text text-anchor="start" x="241" y="-596.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="241" y="-585.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="288" 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="M186.52,-477.62C190.23,-480.36 193.98,-483.55 197,-487 219.02,-512.13 210.28,-528.5 233,-553 235.66,-555.87 238.6,-558.61 241.7,-561.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="239.58,-563.99 249.64,-567.32 243.86,-558.44 239.58,-563.99"/>
|
||||
</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="393.5,-554.5 393.5,-573.5 480.5,-573.5 480.5,-554.5 393.5,-554.5"/>
|
||||
<text text-anchor="middle" x="437" 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="M187.75,-477.5C191.25,-480.17 194.6,-483.36 197,-487 236.19,-546.39 177.32,-598.7 233,-643 271.26,-673.44 297.11,-659.86 343,-643 376.26,-630.78 405.75,-600.81 422.21,-581.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="424.96,-583.66 428.63,-573.71 419.56,-579.2 424.96,-583.66"/>
|
||||
</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="233,-469.5 233,-510.5 343,-510.5 343,-469.5 233,-469.5"/>
|
||||
<text text-anchor="start" x="241" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="241" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="288" 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="M192.01,-471.98C200.89,-473.67 211.77,-475.73 222.95,-477.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="222.33,-481.3 232.81,-479.72 223.64,-474.42 222.33,-481.3"/>
|
||||
</g>
|
||||
<!-- Node5->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node5->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M343.32,-430C351.58,-430 360.18,-430 368.67,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="368.95,-433.5 378.95,-430 368.95,-426.5 368.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="382,-300.5 382,-341.5 492,-341.5 492,-300.5 382,-300.5"/>
|
||||
<text text-anchor="start" x="390" y="-329.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-318.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M335.51,-276.57C349.66,-282.82 365.35,-289.76 380.05,-296.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="378.98,-299.61 389.54,-300.46 381.81,-293.21 378.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="382,-240.5 382,-281.5 492,-281.5 492,-240.5 382,-240.5"/>
|
||||
<text text-anchor="start" x="390" y="-269.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-258.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M343.32,-257.85C352.57,-258.16 362.25,-258.49 371.73,-258.81"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="371.79,-262.32 381.9,-259.16 372.03,-255.32 371.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="382,-180.5 382,-221.5 492,-221.5 492,-180.5 382,-180.5"/>
|
||||
<text text-anchor="start" x="390" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M343.32,-235.68C352.77,-232.14 362.67,-228.44 372.34,-224.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="373.76,-228.02 381.9,-221.24 371.31,-221.47 373.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="382,-120.5 382,-161.5 492,-161.5 492,-120.5 382,-120.5"/>
|
||||
<text text-anchor="start" x="390" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M331.1,-235.34C335.33,-232.48 339.39,-229.36 343,-226 364.39,-206.1 357.38,-190.65 379,-171 380.28,-169.84 381.61,-168.7 382.99,-167.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="385.19,-170.33 391.25,-161.65 381.09,-164.65 385.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="382,-360.5 382,-401.5 492,-401.5 492,-360.5 382,-360.5"/>
|
||||
<text text-anchor="start" x="390" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-378.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M325.9,-276.65C331.99,-280.95 337.95,-285.78 343,-291 364.61,-313.37 356.4,-329.63 379,-351 380.12,-352.06 381.28,-353.09 382.48,-354.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="380.72,-357.14 390.83,-360.31 384.9,-351.53 380.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="531,-330.5 531,-371.5 641,-371.5 641,-330.5 531,-330.5"/>
|
||||
<text text-anchor="start" x="539" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="539" y="-348.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="586" 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="M492.32,-369.91C501.67,-368.01 511.46,-366.01 521.03,-364.05"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="521.81,-367.47 530.9,-362.04 520.41,-360.61 521.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="531,-390.5 531,-431.5 641,-431.5 641,-390.5 531,-390.5"/>
|
||||
<text text-anchor="start" x="539" y="-419.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="539" y="-408.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="586" 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="M492.32,-392.09C501.67,-393.99 511.46,-395.99 521.03,-397.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="520.41,-401.39 530.9,-399.96 521.81,-394.53 520.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="382,-60.5 382,-101.5 492,-101.5 492,-60.5 382,-60.5"/>
|
||||
<text text-anchor="start" x="390" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M307.65,-175.44C324.98,-157.1 352.08,-130.25 379,-111 380.88,-109.65 382.84,-108.33 384.84,-107.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="387.12,-109.73 393.81,-101.52 383.46,-103.77 387.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="382,-0.5 382,-41.5 492,-41.5 492,-0.5 382,-0.5"/>
|
||||
<text text-anchor="start" x="390" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M297.54,-175.37C311.02,-144.9 339.76,-87.55 379,-51 380.27,-49.82 381.59,-48.67 382.95,-47.56"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="385.16,-50.28 391.17,-41.56 381.03,-44.63 385.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="531,-0.5 531,-41.5 641,-41.5 641,-0.5 531,-0.5"/>
|
||||
<text text-anchor="start" x="539" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="539" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="586" 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="M492.32,-21C501.57,-21 511.25,-21 520.73,-21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="520.9,-24.5 530.9,-21 520.9,-17.5 520.9,-24.5"/>
|
||||
</g>
|
||||
<!-- Node19->Node20 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node19->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M343.32,-579.13C356.36,-577 370.26,-574.73 383.22,-572.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="384.08,-576.02 393.38,-570.96 382.95,-569.11 384.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="382,-469.5 382,-510.5 492,-510.5 492,-469.5 382,-469.5"/>
|
||||
<text text-anchor="start" x="390" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M343.32,-490C352.57,-490 362.25,-490 371.73,-490"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="371.9,-493.5 381.9,-490 371.9,-486.5 371.9,-493.5"/>
|
||||
</g>
|
||||
<!-- Node23->Node5 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node23->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.01,-430C200.8,-430 211.55,-430 222.61,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="222.81,-433.5 232.81,-430 222.81,-426.5 222.81,-433.5"/>
|
||||
</g>
|
||||
<!-- Node23->Node6 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node23->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M186.08,-420.3C198.21,-413.11 215.98,-403.9 233,-400 280.65,-389.08 294.7,-392.4 343,-400 345.91,-400.46 373.03,-409.25 397.23,-417.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="396.41,-420.61 407,-420.41 398.6,-413.96 396.41,-420.61"/>
|
||||
</g>
|
||||
<!-- Node23->Node7 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node23->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M177.4,-420.4C194.36,-394.96 240.95,-325.07 267.61,-285.08"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="270.66,-286.82 273.3,-276.56 264.84,-282.94 270.66,-286.82"/>
|
||||
</g>
|
||||
<!-- Node23->Node15 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node23->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M178.17,-420.23C184.03,-411.82 192.12,-399.14 197,-387 224.33,-318.96 189.1,-284.73 233,-226 233.56,-225.25 234.15,-224.51 234.76,-223.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="237.32,-226.18 242.03,-216.69 232.43,-221.18 237.32,-226.18"/>
|
||||
</g>
|
||||
<!-- Node23->Node19 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node23->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M187.47,-439.7C190.98,-442.36 194.41,-445.49 197,-449 226.07,-488.34 202.84,-514.49 233,-553 235.1,-555.68 237.47,-558.22 240.01,-560.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="238.14,-563.62 248.05,-567.35 242.63,-558.25 238.14,-563.62"/>
|
||||
</g>
|
||||
<!-- Node23->Node20 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node23->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M186.59,-439.56C190.3,-442.3 194.03,-445.51 197,-449 219.91,-475.96 205,-498.38 233,-520 256.08,-537.82 331.01,-550.68 383.07,-557.74"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="382.78,-561.24 393.16,-559.08 383.7,-554.3 382.78,-561.24"/>
|
||||
</g>
|
||||
<!-- Node23->Node21 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node23->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M189.38,-439.51C202.55,-446.32 220.93,-455.82 238.19,-464.76"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="236.6,-467.87 247.09,-469.36 239.81,-461.65 236.6,-467.87"/>
|
||||
</g>
|
||||
<!-- Node24->Node5 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node24->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M188.87,-377.55C202.29,-384.73 221.34,-394.9 239.08,-404.39"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="237.74,-407.64 248.21,-409.27 241.04,-401.47 237.74,-407.64"/>
|
||||
</g>
|
||||
<!-- Node24->Node6 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node24->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M181.93,-358.4C193.64,-348.81 213.21,-334.71 233,-329 279.97,-315.45 302.07,-302.27 343,-329 376.32,-350.76 349.59,-384.18 379,-411 380.72,-412.57 382.58,-414.01 384.53,-415.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="383.17,-418.58 393.6,-420.4 386.58,-412.47 383.17,-418.58"/>
|
||||
</g>
|
||||
<!-- Node24->Node7 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node24->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M177.39,-358.17C187.78,-342.68 209.55,-312.15 233,-291 236.17,-288.14 239.6,-285.35 243.14,-282.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="245.44,-285.34 251.53,-276.67 241.36,-279.65 245.44,-285.34"/>
|
||||
</g>
|
||||
<!-- Node24->Node15 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node24->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M172.99,-358.2C178.46,-333.32 195.91,-266.81 233,-226 233.87,-225.04 234.78,-224.1 235.73,-223.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="238.1,-225.77 243.5,-216.66 233.59,-220.41 238.1,-225.77"/>
|
||||
</g>
|
||||
<!-- Node24->Node19 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node24->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M177.64,-377.56C183.33,-386.05 191.46,-398.95 197,-411 218.33,-457.34 208.76,-475.11 233,-520 240.56,-534.01 251.08,-548.04 260.82,-559.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="258.23,-562.03 267.4,-567.33 263.53,-557.46 258.23,-562.03"/>
|
||||
</g>
|
||||
<!-- Node24->Node20 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node24->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.25,-365.47C228.05,-362.47 300.62,-361.95 343,-400 384.43,-437.2 347.45,-474.12 379,-520 386.99,-531.62 399.01,-541.55 409.96,-549.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="408.11,-551.98 418.41,-554.46 411.9,-546.1 408.11,-551.98"/>
|
||||
</g>
|
||||
<!-- Node24->Node21 -->
|
||||
<g id="edge39" class="edge">
|
||||
<title>Node24->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M176.75,-377.72C189.25,-398.64 218.88,-447.04 233,-460 234.28,-461.17 235.61,-462.31 236.98,-463.43"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="235.09,-466.38 245.22,-469.48 239.23,-460.74 235.09,-466.38"/>
|
||||
</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="fibonacci__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: 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: main Pages: 1 -->
|
||||
<svg width="649pt" height="670pt"
|
||||
viewBox="0.00 0.00 649.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 645,-665.58 645,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,-439.5 0,-458.5 38,-458.5 38,-439.5 0,-439.5"/>
|
||||
<text text-anchor="middle" x="19" y="-446.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="../../de/dc3/fibonacci__sum_8cpp.html#aa8dca7b867074164d5f45b0f3851269d" target="_top" xlink:title=" ">
|
||||
<polygon fill="white" stroke="black" points="74,-439.5 74,-458.5 107,-458.5 107,-439.5 74,-439.5"/>
|
||||
<text text-anchor="middle" x="90.5" y="-446.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,-449C46.07,-449 55.31,-449 63.79,-449"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="63.95,-452.5 73.95,-449 63.95,-445.5 63.95,-452.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="143,-496.5 143,-515.5 197,-515.5 197,-496.5 143,-496.5"/>
|
||||
<text text-anchor="middle" x="170" y="-503.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="M104.61,-458.7C115.01,-466.39 129.92,-477.4 143,-487 144.43,-488.05 145.89,-489.12 147.38,-490.21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="145.63,-493.27 155.76,-496.35 149.76,-487.62 145.63,-493.27"/>
|
||||
</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="148,-458.5 148,-477.5 192,-477.5 192,-458.5 148,-458.5"/>
|
||||
<text text-anchor="middle" x="170" y="-465.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_1</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node4 -->
|
||||
<g id="edge3" class="edge">
|
||||
<title>Node2->Node4</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.18,-452.84C116.03,-455.01 127.4,-457.8 137.98,-460.39"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="137.21,-463.81 147.76,-462.79 138.88,-457.01 137.21,-463.81"/>
|
||||
</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="148,-420.5 148,-439.5 192,-439.5 192,-420.5 148,-420.5"/>
|
||||
<text text-anchor="middle" x="170" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_2</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node23 -->
|
||||
<g id="edge24" class="edge">
|
||||
<title>Node2->Node23</title>
|
||||
<path fill="none" stroke="midnightblue" d="M107.18,-445.16C116.03,-442.99 127.4,-440.2 137.98,-437.61"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="138.88,-440.99 147.76,-435.21 137.21,-434.19 138.88,-440.99"/>
|
||||
</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="148,-358.5 148,-377.5 192,-377.5 192,-358.5 148,-358.5"/>
|
||||
<text text-anchor="middle" x="170" y="-365.5" font-family="Helvetica,sans-Serif" font-size="10.00">test_3</text>
|
||||
</a>
|
||||
</g>
|
||||
</g>
|
||||
<!-- Node2->Node24 -->
|
||||
<g id="edge32" class="edge">
|
||||
<title>Node2->Node24</title>
|
||||
<path fill="none" stroke="midnightblue" d="M100.69,-439.39C113.51,-425.99 136.95,-401.49 152.75,-384.98"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="155.43,-387.24 159.82,-377.6 150.38,-382.4 155.43,-387.24"/>
|
||||
</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="233,-409.5 233,-450.5 343,-450.5 343,-409.5 233,-409.5"/>
|
||||
<text text-anchor="start" x="241" y="-438.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="241" y="-427.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="288" 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="M192.01,-461.12C200.98,-458.18 211.99,-454.57 223.29,-450.87"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="224.4,-454.19 232.81,-447.75 222.22,-447.54 224.4,-454.19"/>
|
||||
</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="379,-420.5 379,-439.5 495,-439.5 495,-420.5 379,-420.5"/>
|
||||
<text text-anchor="middle" x="437" 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="M187.64,-477.58C191.14,-480.24 194.52,-483.41 197,-487 231.29,-536.7 184.98,-581.4 233,-618 271.88,-647.64 304.78,-648.49 343,-618 399.3,-573.08 335.12,-517.11 379,-460 383.93,-453.58 390.64,-448.39 397.72,-444.25"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="399.51,-447.26 406.78,-439.55 396.29,-441.05 399.51,-447.26"/>
|
||||
</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="233,-235.5 233,-276.5 343,-276.5 343,-235.5 233,-235.5"/>
|
||||
<text text-anchor="start" x="241" y="-264.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="241" y="-253.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="288" 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="M186.94,-458.31C190.56,-455.61 194.16,-452.46 197,-449 238.23,-398.84 265.25,-326.68 278.15,-286.3"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="281.49,-287.34 281.12,-276.75 274.81,-285.26 281.49,-287.34"/>
|
||||
</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="233,-175.5 233,-216.5 343,-216.5 343,-175.5 233,-175.5"/>
|
||||
<text text-anchor="start" x="241" y="-204.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="241" y="-193.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="288" 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="M188.19,-458.4C191.59,-455.77 194.78,-452.62 197,-449 249.47,-363.41 175.33,-308.18 233,-226 233.54,-225.23 234.1,-224.48 234.69,-223.75"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="237.28,-226.11 241.81,-216.53 232.29,-221.2 237.28,-226.11"/>
|
||||
</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="233,-567.5 233,-608.5 343,-608.5 343,-567.5 233,-567.5"/>
|
||||
<text text-anchor="start" x="241" y="-596.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="241" y="-585.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="288" 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="M186.52,-477.62C190.23,-480.36 193.98,-483.55 197,-487 219.02,-512.13 210.28,-528.5 233,-553 235.66,-555.87 238.6,-558.61 241.7,-561.2"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="239.58,-563.99 249.64,-567.32 243.86,-558.44 239.58,-563.99"/>
|
||||
</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="393.5,-554.5 393.5,-573.5 480.5,-573.5 480.5,-554.5 393.5,-554.5"/>
|
||||
<text text-anchor="middle" x="437" 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="M187.75,-477.5C191.25,-480.17 194.6,-483.36 197,-487 236.19,-546.39 177.32,-598.7 233,-643 271.26,-673.44 297.11,-659.86 343,-643 376.26,-630.78 405.75,-600.81 422.21,-581.5"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="424.96,-583.66 428.63,-573.71 419.56,-579.2 424.96,-583.66"/>
|
||||
</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="233,-469.5 233,-510.5 343,-510.5 343,-469.5 233,-469.5"/>
|
||||
<text text-anchor="start" x="241" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="241" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="288" 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="M192.01,-471.98C200.89,-473.67 211.77,-475.73 222.95,-477.85"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="222.33,-481.3 232.81,-479.72 223.64,-474.42 222.33,-481.3"/>
|
||||
</g>
|
||||
<!-- Node5->Node6 -->
|
||||
<g id="edge5" class="edge">
|
||||
<title>Node5->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M343.32,-430C351.58,-430 360.18,-430 368.67,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="368.95,-433.5 378.95,-430 368.95,-426.5 368.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="382,-300.5 382,-341.5 492,-341.5 492,-300.5 382,-300.5"/>
|
||||
<text text-anchor="start" x="390" y="-329.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-318.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M335.51,-276.57C349.66,-282.82 365.35,-289.76 380.05,-296.26"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="378.98,-299.61 389.54,-300.46 381.81,-293.21 378.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="382,-240.5 382,-281.5 492,-281.5 492,-240.5 382,-240.5"/>
|
||||
<text text-anchor="start" x="390" y="-269.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-258.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M343.32,-257.85C352.57,-258.16 362.25,-258.49 371.73,-258.81"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="371.79,-262.32 381.9,-259.16 372.03,-255.32 371.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="382,-180.5 382,-221.5 492,-221.5 492,-180.5 382,-180.5"/>
|
||||
<text text-anchor="start" x="390" y="-209.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-198.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M343.32,-235.68C352.77,-232.14 362.67,-228.44 372.34,-224.82"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="373.76,-228.02 381.9,-221.24 371.31,-221.47 373.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="382,-120.5 382,-161.5 492,-161.5 492,-120.5 382,-120.5"/>
|
||||
<text text-anchor="start" x="390" y="-149.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-138.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M331.1,-235.34C335.33,-232.48 339.39,-229.36 343,-226 364.39,-206.1 357.38,-190.65 379,-171 380.28,-169.84 381.61,-168.7 382.99,-167.6"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="385.19,-170.33 391.25,-161.65 381.09,-164.65 385.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="382,-360.5 382,-401.5 492,-401.5 492,-360.5 382,-360.5"/>
|
||||
<text text-anchor="start" x="390" y="-389.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-378.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M325.9,-276.65C331.99,-280.95 337.95,-285.78 343,-291 364.61,-313.37 356.4,-329.63 379,-351 380.12,-352.06 381.28,-353.09 382.48,-354.09"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="380.72,-357.14 390.83,-360.31 384.9,-351.53 380.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="531,-330.5 531,-371.5 641,-371.5 641,-330.5 531,-330.5"/>
|
||||
<text text-anchor="start" x="539" y="-359.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="539" y="-348.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="586" 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="M492.32,-369.91C501.67,-368.01 511.46,-366.01 521.03,-364.05"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="521.81,-367.47 530.9,-362.04 520.41,-360.61 521.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="531,-390.5 531,-431.5 641,-431.5 641,-390.5 531,-390.5"/>
|
||||
<text text-anchor="start" x="539" y="-419.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="539" y="-408.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="586" 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="M492.32,-392.09C501.67,-393.99 511.46,-395.99 521.03,-397.95"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="520.41,-401.39 530.9,-399.96 521.81,-394.53 520.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="382,-60.5 382,-101.5 492,-101.5 492,-60.5 382,-60.5"/>
|
||||
<text text-anchor="start" x="390" y="-89.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-78.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M307.65,-175.44C324.98,-157.1 352.08,-130.25 379,-111 380.88,-109.65 382.84,-108.33 384.84,-107.03"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="387.12,-109.73 393.81,-101.52 383.46,-103.77 387.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="382,-0.5 382,-41.5 492,-41.5 492,-0.5 382,-0.5"/>
|
||||
<text text-anchor="start" x="390" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M297.54,-175.37C311.02,-144.9 339.76,-87.55 379,-51 380.27,-49.82 381.59,-48.67 382.95,-47.56"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="385.16,-50.28 391.17,-41.56 381.03,-44.63 385.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="531,-0.5 531,-41.5 641,-41.5 641,-0.5 531,-0.5"/>
|
||||
<text text-anchor="start" x="539" y="-29.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="539" y="-18.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="586" 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="M492.32,-21C501.57,-21 511.25,-21 520.73,-21"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="520.9,-24.5 530.9,-21 520.9,-17.5 520.9,-24.5"/>
|
||||
</g>
|
||||
<!-- Node19->Node20 -->
|
||||
<g id="edge20" class="edge">
|
||||
<title>Node19->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M343.32,-579.13C356.36,-577 370.26,-574.73 383.22,-572.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="384.08,-576.02 393.38,-570.96 382.95,-569.11 384.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="382,-469.5 382,-510.5 492,-510.5 492,-469.5 382,-469.5"/>
|
||||
<text text-anchor="start" x="390" y="-498.5" font-family="Helvetica,sans-Serif" font-size="10.00">range_queries::heavy</text>
|
||||
<text text-anchor="start" x="390" y="-487.5" font-family="Helvetica,sans-Serif" font-size="10.00">_light_decomposition</text>
|
||||
<text text-anchor="middle" x="437" 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="M343.32,-490C352.57,-490 362.25,-490 371.73,-490"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="371.9,-493.5 381.9,-490 371.9,-486.5 371.9,-493.5"/>
|
||||
</g>
|
||||
<!-- Node23->Node5 -->
|
||||
<g id="edge25" class="edge">
|
||||
<title>Node23->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.01,-430C200.8,-430 211.55,-430 222.61,-430"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="222.81,-433.5 232.81,-430 222.81,-426.5 222.81,-433.5"/>
|
||||
</g>
|
||||
<!-- Node23->Node6 -->
|
||||
<g id="edge27" class="edge">
|
||||
<title>Node23->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M186.08,-420.3C198.21,-413.11 215.98,-403.9 233,-400 280.65,-389.08 294.7,-392.4 343,-400 345.91,-400.46 373.03,-409.25 397.23,-417.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="396.41,-420.61 407,-420.41 398.6,-413.96 396.41,-420.61"/>
|
||||
</g>
|
||||
<!-- Node23->Node7 -->
|
||||
<g id="edge26" class="edge">
|
||||
<title>Node23->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M177.4,-420.4C194.36,-394.96 240.95,-325.07 267.61,-285.08"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="270.66,-286.82 273.3,-276.56 264.84,-282.94 270.66,-286.82"/>
|
||||
</g>
|
||||
<!-- Node23->Node15 -->
|
||||
<g id="edge28" class="edge">
|
||||
<title>Node23->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M178.17,-420.23C184.03,-411.82 192.12,-399.14 197,-387 224.33,-318.96 189.1,-284.73 233,-226 233.56,-225.25 234.15,-224.51 234.76,-223.79"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="237.32,-226.18 242.03,-216.69 232.43,-221.18 237.32,-226.18"/>
|
||||
</g>
|
||||
<!-- Node23->Node19 -->
|
||||
<g id="edge29" class="edge">
|
||||
<title>Node23->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M187.47,-439.7C190.98,-442.36 194.41,-445.49 197,-449 226.07,-488.34 202.84,-514.49 233,-553 235.1,-555.68 237.47,-558.22 240.01,-560.62"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="238.14,-563.62 248.05,-567.35 242.63,-558.25 238.14,-563.62"/>
|
||||
</g>
|
||||
<!-- Node23->Node20 -->
|
||||
<g id="edge30" class="edge">
|
||||
<title>Node23->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M186.59,-439.56C190.3,-442.3 194.03,-445.51 197,-449 219.91,-475.96 205,-498.38 233,-520 256.08,-537.82 331.01,-550.68 383.07,-557.74"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="382.78,-561.24 393.16,-559.08 383.7,-554.3 382.78,-561.24"/>
|
||||
</g>
|
||||
<!-- Node23->Node21 -->
|
||||
<g id="edge31" class="edge">
|
||||
<title>Node23->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M189.38,-439.51C202.55,-446.32 220.93,-455.82 238.19,-464.76"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="236.6,-467.87 247.09,-469.36 239.81,-461.65 236.6,-467.87"/>
|
||||
</g>
|
||||
<!-- Node24->Node5 -->
|
||||
<g id="edge33" class="edge">
|
||||
<title>Node24->Node5</title>
|
||||
<path fill="none" stroke="midnightblue" d="M188.87,-377.55C202.29,-384.73 221.34,-394.9 239.08,-404.39"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="237.74,-407.64 248.21,-409.27 241.04,-401.47 237.74,-407.64"/>
|
||||
</g>
|
||||
<!-- Node24->Node6 -->
|
||||
<g id="edge35" class="edge">
|
||||
<title>Node24->Node6</title>
|
||||
<path fill="none" stroke="midnightblue" d="M181.93,-358.4C193.64,-348.81 213.21,-334.71 233,-329 279.97,-315.45 302.07,-302.27 343,-329 376.32,-350.76 349.59,-384.18 379,-411 380.72,-412.57 382.58,-414.01 384.53,-415.33"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="383.17,-418.58 393.6,-420.4 386.58,-412.47 383.17,-418.58"/>
|
||||
</g>
|
||||
<!-- Node24->Node7 -->
|
||||
<g id="edge34" class="edge">
|
||||
<title>Node24->Node7</title>
|
||||
<path fill="none" stroke="midnightblue" d="M177.39,-358.17C187.78,-342.68 209.55,-312.15 233,-291 236.17,-288.14 239.6,-285.35 243.14,-282.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="245.44,-285.34 251.53,-276.67 241.36,-279.65 245.44,-285.34"/>
|
||||
</g>
|
||||
<!-- Node24->Node15 -->
|
||||
<g id="edge36" class="edge">
|
||||
<title>Node24->Node15</title>
|
||||
<path fill="none" stroke="midnightblue" d="M172.99,-358.2C178.46,-333.32 195.91,-266.81 233,-226 233.87,-225.04 234.78,-224.1 235.73,-223.19"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="238.1,-225.77 243.5,-216.66 233.59,-220.41 238.1,-225.77"/>
|
||||
</g>
|
||||
<!-- Node24->Node19 -->
|
||||
<g id="edge37" class="edge">
|
||||
<title>Node24->Node19</title>
|
||||
<path fill="none" stroke="midnightblue" d="M177.64,-377.56C183.33,-386.05 191.46,-398.95 197,-411 218.33,-457.34 208.76,-475.11 233,-520 240.56,-534.01 251.08,-548.04 260.82,-559.68"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="258.23,-562.03 267.4,-567.33 263.53,-557.46 258.23,-562.03"/>
|
||||
</g>
|
||||
<!-- Node24->Node20 -->
|
||||
<g id="edge38" class="edge">
|
||||
<title>Node24->Node20</title>
|
||||
<path fill="none" stroke="midnightblue" d="M192.25,-365.47C228.05,-362.47 300.62,-361.95 343,-400 384.43,-437.2 347.45,-474.12 379,-520 386.99,-531.62 399.01,-541.55 409.96,-549.01"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="408.11,-551.98 418.41,-554.46 411.9,-546.1 408.11,-551.98"/>
|
||||
</g>
|
||||
<!-- Node24->Node21 -->
|
||||
<g id="edge39" class="edge">
|
||||
<title>Node24->Node21</title>
|
||||
<path fill="none" stroke="midnightblue" d="M176.75,-377.72C189.25,-398.64 218.88,-447.04 233,-460 234.28,-461.17 235.61,-462.31 236.98,-463.43"/>
|
||||
<polygon fill="midnightblue" stroke="midnightblue" points="235.09,-466.38 245.22,-469.48 239.23,-460.74 235.09,-466.38"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 30 KiB |