Skip to content

Commit 8430712

Browse files
1 parent f753e79 commit 8430712

File tree

5 files changed

+11
-7
lines changed

5 files changed

+11
-7
lines changed

1392/data_structures/segment_tree.html

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7409,6 +7409,10 @@
74097409

74107410

74117411

7412+
7413+
7414+
7415+
74127416

74137417

74147418

@@ -7421,7 +7425,7 @@
74217425
<ul class="metadata page-metadata" data-bi-name="page info" lang="en-us" dir="ltr">
74227426

74237427
Last update:
7424-
<span class="git-revision-date-localized-plugin git-revision-date-localized-plugin-date">November 13, 2024</span>&emsp;
7428+
<span class="git-revision-date-localized-plugin git-revision-date-localized-plugin-date">March 24, 2025</span>&emsp;
74257429

74267430
<!-- Tags -->
74277431

@@ -7586,7 +7590,7 @@ <h3 id="implementation">Implementation<a class="headerlink" href="#implementatio
75867590
In order to simplify the code, this function always does two recursive calls, even if only one is necessary - in that case the superfluous recursive call will have <span class="arithmatex">$l &gt; r$</span>, and this can easily be caught using an additional check at the beginning of the function.</p>
75877591
<div class="highlight"><pre><span></span><code><span class="kt">int</span><span class="w"> </span><span class="nf">sum</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">v</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">tl</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">tr</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">l</span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">r</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
75887592
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">tr</span><span class="w"> </span><span class="o">&lt;</span><span class="w"> </span><span class="n">l</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">tl</span><span class="w"> </span><span class="o">&gt;</span><span class="w"> </span><span class="n">r</span><span class="p">)</span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"> </span><span class="c1">// no overlap</span>
7589-
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">tl</span><span class="w"> </span><span class="o">&gt;=</span><span class="w"> </span><span class="n">l</span><span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span><span class="n">tr</span><span class="w"> </span><span class="o">&lt;=</span><span class="w"> </span><span class="n">r</span><span class="p">)</span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">t</span><span class="p">[</span><span class="n">v</span><span class="p">];</span><span class="w"> </span><span class="c1">// complete overlap</span>
7593+
<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">l</span><span class="w"> </span><span class="o">&lt;=</span><span class="w"> </span><span class="n">tl</span><span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span><span class="n">tr</span><span class="w"> </span><span class="o">&lt;=</span><span class="w"> </span><span class="n">r</span><span class="p">)</span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">t</span><span class="p">[</span><span class="n">v</span><span class="p">];</span><span class="w"> </span><span class="c1">// nested segment</span>
75907594

75917595
<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">tm</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="n">tl</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="n">tr</span><span class="p">)</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="mi">2</span><span class="p">;</span>
75927596
<span class="w"> </span><span class="c1">// partial overlap</span>
@@ -8415,7 +8419,7 @@ <h2 id="practice-problems">Practice Problems<a class="headerlink" href="#practic
84158419

84168420
<ul class="metadata page-metadata" data-bi-name="page info" lang="en-us" dir="ltr">
84178421
<span class="contributors-text">Contributors:</span>
8418-
<ul class="contributors" data-bi-name="contributors"><li><a href="https://github.com/jakobkogler" title="jakobkogler" data-bi-name="contributorprofile" target="_blank">jakobkogler</a> (76.02%)</li><li><a href="https://github.com/dasfex" title="dasfex" data-bi-name="contributorprofile" target="_blank">dasfex</a> (5.5%)</li><li><a href="https://github.com/arjan-bal" title="arjan-bal" data-bi-name="contributorprofile" target="_blank">arjan-bal</a> (4.58%)</li><li><a href="https://github.com/tpoppo" title="tpoppo" data-bi-name="contributorprofile" target="_blank">tpoppo</a> (1.83%)</li><li><a href="https://github.com/GaurangTandon" title="GaurangTandon" data-bi-name="contributorprofile" target="_blank">GaurangTandon</a> (1.67%)</li><li><a href="https://github.com/masterchef2209" title="masterchef2209" data-bi-name="contributorprofile" target="_blank">masterchef2209</a> (1.33%)</li><li><a href="https://github.com/jxu" title="jxu" data-bi-name="contributorprofile" target="_blank">jxu</a> (1.25%)</li><li><a href="https://github.com/Stillswarm" title="Stillswarm" data-bi-name="contributorprofile" target="_blank">Stillswarm</a> (0.92%)</li><li><a href="https://github.com/akoutian" title="akoutian" data-bi-name="contributorprofile" target="_blank">akoutian</a> (0.92%)</li><li><a href="https://github.com/L1nkus" title="L1nkus" data-bi-name="contributorprofile" target="_blank">L1nkus</a> (0.9199999999999999%)</li><li><a href="https://github.com/wikku" title="wikku" data-bi-name="contributorprofile" target="_blank">wikku</a> (0.84%)</li><li><a href="https://github.com/adamant-pwn" title="adamant-pwn" data-bi-name="contributorprofile" target="_blank">adamant-pwn</a> (0.58%)</li><li><a href="https://github.com/pr4shan7" title="pr4shan7" data-bi-name="contributorprofile" target="_blank">pr4shan7</a> (0.5%)</li><li><a href="https://github.com/kerolloz" title="kerolloz" data-bi-name="contributorprofile" target="_blank">kerolloz</a> (0.5%)</li><li><a href="https://github.com/mhayter" title="mhayter" data-bi-name="contributorprofile" target="_blank">mhayter</a> (0.42%)</li><li><a href="https://github.com/huggin" title="huggin" data-bi-name="contributorprofile" target="_blank">huggin</a> (0.33%)</li><li><a href="https://github.com/zyrch" title="zyrch" data-bi-name="contributorprofile" target="_blank">zyrch</a> (0.25%)</li><li><a href="https://github.com/SiddharthEEE" title="SiddharthEEE" data-bi-name="contributorprofile" target="_blank">SiddharthEEE</a> (0.17%)</li><li><a href="https://github.com/xirc" title="xirc" data-bi-name="contributorprofile" target="_blank">xirc</a> (0.17%)</li><li><a href="https://github.com/boxlesscat" title="boxlesscat" data-bi-name="contributorprofile" target="_blank">boxlesscat</a> (0.08%)</li><li><a href="https://github.com/3centroids" title="3centroids" data-bi-name="contributorprofile" target="_blank">3centroids</a> (0.08%)</li><li><a href="https://github.com/mehrdad3301" title="mehrdad3301" data-bi-name="contributorprofile" target="_blank">mehrdad3301</a> (0.08%)</li><li><a href="https://github.com/scion03" title="scion03" data-bi-name="contributorprofile" target="_blank">scion03</a> (0.08%)</li><li><a href="https://github.com/DevChoganwala" title="DevChoganwala" data-bi-name="contributorprofile" target="_blank">DevChoganwala</a> (0.08%)</li><li><a href="https://github.com/Abhishek-Saini" title="Abhishek-Saini" data-bi-name="contributorprofile" target="_blank">Abhishek-Saini</a> (0.08%)</li><li><a href="https://github.com/tarptaeya" title="tarptaeya" data-bi-name="contributorprofile" target="_blank">tarptaeya</a> (0.08%)</li><li><a href="https://github.com/it-is-skywalkerl" title="it-is-skywalkerl" data-bi-name="contributorprofile" target="_blank">it-is-skywalkerl</a> (0.08%)</li><li><a href="https://github.com/forsythe" title="forsythe" data-bi-name="contributorprofile" target="_blank">forsythe</a> (0.08%)</li><li><a href="https://github.com/ChangMarkusYu" title="ChangMarkusYu" data-bi-name="contributorprofile" target="_blank">ChangMarkusYu</a> (0.08%)</li><li><a href="https://github.com/Aryamn" title="Aryamn" data-bi-name="contributorprofile" target="_blank">Aryamn</a> (0.08%)</li><li><a href="https://github.com/ArthurConmy" title="ArthurConmy" data-bi-name="contributorprofile" target="_blank">ArthurConmy</a> (0.08%)</li><li><a href="https://github.com/tanmay-sinha" title="tanmay-sinha" data-bi-name="contributorprofile" target="_blank">tanmay-sinha</a> (0.08%)</li><li><a href="https://github.com/idleft" title="idleft" data-bi-name="contributorprofile" target="_blank">idleft</a> (0.08%)</li><li><a href="https://github.com/Naman-Bhalla" title="Naman-Bhalla" data-bi-name="contributorprofile" target="_blank">Naman-Bhalla</a> (0.08%)</li><li><a href="https://github.com/RodionGork" title="RodionGork" data-bi-name="contributorprofile" target="_blank">RodionGork</a> (0.08%)</li></ul>
8422+
<ul class="contributors" data-bi-name="contributors"><li><a href="https://github.com/jakobkogler" title="jakobkogler" data-bi-name="contributorprofile" target="_blank">jakobkogler</a> (76.02%)</li><li><a href="https://github.com/dasfex" title="dasfex" data-bi-name="contributorprofile" target="_blank">dasfex</a> (5.5%)</li><li><a href="https://github.com/arjan-bal" title="arjan-bal" data-bi-name="contributorprofile" target="_blank">arjan-bal</a> (4.58%)</li><li><a href="https://github.com/tpoppo" title="tpoppo" data-bi-name="contributorprofile" target="_blank">tpoppo</a> (1.83%)</li><li><a href="https://github.com/GaurangTandon" title="GaurangTandon" data-bi-name="contributorprofile" target="_blank">GaurangTandon</a> (1.67%)</li><li><a href="https://github.com/masterchef2209" title="masterchef2209" data-bi-name="contributorprofile" target="_blank">masterchef2209</a> (1.33%)</li><li><a href="https://github.com/jxu" title="jxu" data-bi-name="contributorprofile" target="_blank">jxu</a> (1.25%)</li><li><a href="https://github.com/akoutian" title="akoutian" data-bi-name="contributorprofile" target="_blank">akoutian</a> (0.92%)</li><li><a href="https://github.com/L1nkus" title="L1nkus" data-bi-name="contributorprofile" target="_blank">L1nkus</a> (0.9199999999999999%)</li><li><a href="https://github.com/wikku" title="wikku" data-bi-name="contributorprofile" target="_blank">wikku</a> (0.84%)</li><li><a href="https://github.com/Stillswarm" title="Stillswarm" data-bi-name="contributorprofile" target="_blank">Stillswarm</a> (0.83%)</li><li><a href="https://github.com/adamant-pwn" title="adamant-pwn" data-bi-name="contributorprofile" target="_blank">adamant-pwn</a> (0.6599999999999999%)</li><li><a href="https://github.com/pr4shan7" title="pr4shan7" data-bi-name="contributorprofile" target="_blank">pr4shan7</a> (0.5%)</li><li><a href="https://github.com/kerolloz" title="kerolloz" data-bi-name="contributorprofile" target="_blank">kerolloz</a> (0.5%)</li><li><a href="https://github.com/mhayter" title="mhayter" data-bi-name="contributorprofile" target="_blank">mhayter</a> (0.42%)</li><li><a href="https://github.com/huggin" title="huggin" data-bi-name="contributorprofile" target="_blank">huggin</a> (0.33%)</li><li><a href="https://github.com/zyrch" title="zyrch" data-bi-name="contributorprofile" target="_blank">zyrch</a> (0.25%)</li><li><a href="https://github.com/SiddharthEEE" title="SiddharthEEE" data-bi-name="contributorprofile" target="_blank">SiddharthEEE</a> (0.17%)</li><li><a href="https://github.com/xirc" title="xirc" data-bi-name="contributorprofile" target="_blank">xirc</a> (0.17%)</li><li><a href="https://github.com/boxlesscat" title="boxlesscat" data-bi-name="contributorprofile" target="_blank">boxlesscat</a> (0.08%)</li><li><a href="https://github.com/3centroids" title="3centroids" data-bi-name="contributorprofile" target="_blank">3centroids</a> (0.08%)</li><li><a href="https://github.com/mehrdad3301" title="mehrdad3301" data-bi-name="contributorprofile" target="_blank">mehrdad3301</a> (0.08%)</li><li><a href="https://github.com/scion03" title="scion03" data-bi-name="contributorprofile" target="_blank">scion03</a> (0.08%)</li><li><a href="https://github.com/DevChoganwala" title="DevChoganwala" data-bi-name="contributorprofile" target="_blank">DevChoganwala</a> (0.08%)</li><li><a href="https://github.com/Abhishek-Saini" title="Abhishek-Saini" data-bi-name="contributorprofile" target="_blank">Abhishek-Saini</a> (0.08%)</li><li><a href="https://github.com/tarptaeya" title="tarptaeya" data-bi-name="contributorprofile" target="_blank">tarptaeya</a> (0.08%)</li><li><a href="https://github.com/it-is-skywalkerl" title="it-is-skywalkerl" data-bi-name="contributorprofile" target="_blank">it-is-skywalkerl</a> (0.08%)</li><li><a href="https://github.com/forsythe" title="forsythe" data-bi-name="contributorprofile" target="_blank">forsythe</a> (0.08%)</li><li><a href="https://github.com/ChangMarkusYu" title="ChangMarkusYu" data-bi-name="contributorprofile" target="_blank">ChangMarkusYu</a> (0.08%)</li><li><a href="https://github.com/Aryamn" title="Aryamn" data-bi-name="contributorprofile" target="_blank">Aryamn</a> (0.08%)</li><li><a href="https://github.com/ArthurConmy" title="ArthurConmy" data-bi-name="contributorprofile" target="_blank">ArthurConmy</a> (0.08%)</li><li><a href="https://github.com/tanmay-sinha" title="tanmay-sinha" data-bi-name="contributorprofile" target="_blank">tanmay-sinha</a> (0.08%)</li><li><a href="https://github.com/idleft" title="idleft" data-bi-name="contributorprofile" target="_blank">idleft</a> (0.08%)</li><li><a href="https://github.com/Naman-Bhalla" title="Naman-Bhalla" data-bi-name="contributorprofile" target="_blank">Naman-Bhalla</a> (0.08%)</li><li><a href="https://github.com/RodionGork" title="RodionGork" data-bi-name="contributorprofile" target="_blank">RodionGork</a> (0.08%)</li></ul>
84198423
</ul>
84208424

84218425
</article>

0 commit comments

Comments
 (0)