@@ -78330,7 +78330,7 @@ <h2 id="solutions">Solutions</h2>
78330
78330
<!-- solution:start -->
78331
78331
78332
78332
<h3 id="solution-1">Solution 1</h3>
78333
- <div class="tabbed-set tabbed-alternate" data-tabs="1:3 "><input checked="checked" id="__tabbed_1_1" name="__tabbed_1" type="radio" /><input id="__tabbed_1_2" name="__tabbed_1" type="radio" /><input id="__tabbed_1_3" name="__tabbed_1" type="radio" /><div class="tabbed-labels"><label for="__tabbed_1_1">Python3</label><label for="__tabbed_1_2">Java</label><label for="__tabbed_1_3">Go</label></div>
78333
+ <div class="tabbed-set tabbed-alternate" data-tabs="1:4 "><input checked="checked" id="__tabbed_1_1" name="__tabbed_1" type="radio" /><input id="__tabbed_1_2" name="__tabbed_1" type="radio" /><input id="__tabbed_1_3" name="__tabbed_1" type="radio" /><input id="__tabbed_1_4" name="__tabbed_1" type="radio" />< div class="tabbed-labels"><label for="__tabbed_1_1">Python3</label><label for="__tabbed_1_2">Java</label><label for="__tabbed_1_3">Go</label><label for="__tabbed_1_4">JavaScript </label></div>
78334
78334
<div class="tabbed-content">
78335
78335
<div class="tabbed-block">
78336
78336
<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
@@ -78522,6 +78522,94 @@ <h3 id="solution-1">Solution 1</h3>
78522
78522
<span class="p">}</span>
78523
78523
</code></pre></div></td></tr></table></div>
78524
78524
</div>
78525
+ <div class="tabbed-block">
78526
+ <div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span>
78527
+ <span class="normal"> 2</span>
78528
+ <span class="normal"> 3</span>
78529
+ <span class="normal"> 4</span>
78530
+ <span class="normal"> 5</span>
78531
+ <span class="normal"> 6</span>
78532
+ <span class="normal"> 7</span>
78533
+ <span class="normal"> 8</span>
78534
+ <span class="normal"> 9</span>
78535
+ <span class="normal">10</span>
78536
+ <span class="normal">11</span>
78537
+ <span class="normal">12</span>
78538
+ <span class="normal">13</span>
78539
+ <span class="normal">14</span>
78540
+ <span class="normal">15</span>
78541
+ <span class="normal">16</span>
78542
+ <span class="normal">17</span>
78543
+ <span class="normal">18</span>
78544
+ <span class="normal">19</span>
78545
+ <span class="normal">20</span>
78546
+ <span class="normal">21</span>
78547
+ <span class="normal">22</span>
78548
+ <span class="normal">23</span>
78549
+ <span class="normal">24</span>
78550
+ <span class="normal">25</span>
78551
+ <span class="normal">26</span>
78552
+ <span class="normal">27</span>
78553
+ <span class="normal">28</span>
78554
+ <span class="normal">29</span>
78555
+ <span class="normal">30</span>
78556
+ <span class="normal">31</span>
78557
+ <span class="normal">32</span>
78558
+ <span class="normal">33</span>
78559
+ <span class="normal">34</span>
78560
+ <span class="normal">35</span>
78561
+ <span class="normal">36</span>
78562
+ <span class="normal">37</span>
78563
+ <span class="normal">38</span>
78564
+ <span class="normal">39</span>
78565
+ <span class="normal">40</span>
78566
+ <span class="normal">41</span>
78567
+ <span class="normal">42</span>
78568
+ <span class="normal">43</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="cm">/**</span>
78569
+ <span class="cm"> * @param {string} expression</span>
78570
+ <span class="cm"> * @return {string}</span>
78571
+ <span class="cm"> */</span>
78572
+ <span class="kd">var</span><span class="w"> </span><span class="nx">fractionAddition</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="kd">function</span><span class="w"> </span><span class="p">(</span><span class="nx">expression</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
78573
+ <span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nx">x</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">0</span><span class="p">,</span>
78574
+ <span class="w"> </span><span class="nx">y</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">1</span><span class="p">;</span>
78575
+
78576
+ <span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="o">!</span><span class="nx">expression</span><span class="p">.</span><span class="nx">startsWith</span><span class="p">(</span><span class="s1">'-'</span><span class="p">)</span><span class="w"> </span><span class="o">&&</span><span class="w"> </span><span class="o">!</span><span class="nx">expression</span><span class="p">.</span><span class="nx">startsWith</span><span class="p">(</span><span class="s1">'+'</span><span class="p">))</span><span class="w"> </span><span class="p">{</span>
78577
+ <span class="w"> </span><span class="nx">expression</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s1">'+'</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="nx">expression</span><span class="p">;</span>
78578
+ <span class="w"> </span><span class="p">}</span>
78579
+
78580
+ <span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nx">i</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mf">0</span><span class="p">;</span>
78581
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">n</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">expression</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span>
78582
+
78583
+ <span class="w"> </span><span class="k">while</span><span class="w"> </span><span class="p">(</span><span class="nx">i</span><span class="w"> </span><span class="o"><</span><span class="w"> </span><span class="nx">n</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
78584
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">sign</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">expression</span><span class="p">[</span><span class="nx">i</span><span class="p">]</span><span class="w"> </span><span class="o">===</span><span class="w"> </span><span class="s1">'-'</span><span class="w"> </span><span class="o">?</span><span class="w"> </span><span class="o">-</span><span class="mf">1</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="mf">1</span><span class="p">;</span>
78585
+ <span class="w"> </span><span class="nx">i</span><span class="o">++</span><span class="p">;</span>
78586
+
78587
+ <span class="w"> </span><span class="kd">let</span><span class="w"> </span><span class="nx">j</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">i</span><span class="p">;</span>
78588
+ <span class="w"> </span><span class="k">while</span><span class="w"> </span><span class="p">(</span><span class="nx">j</span><span class="w"> </span><span class="o"><</span><span class="w"> </span><span class="nx">n</span><span class="w"> </span><span class="o">&&</span><span class="w"> </span><span class="nx">expression</span><span class="p">[</span><span class="nx">j</span><span class="p">]</span><span class="w"> </span><span class="o">!==</span><span class="w"> </span><span class="s1">'+'</span><span class="w"> </span><span class="o">&&</span><span class="w"> </span><span class="nx">expression</span><span class="p">[</span><span class="nx">j</span><span class="p">]</span><span class="w"> </span><span class="o">!==</span><span class="w"> </span><span class="s1">'-'</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
78589
+ <span class="w"> </span><span class="nx">j</span><span class="o">++</span><span class="p">;</span>
78590
+ <span class="w"> </span><span class="p">}</span>
78591
+
78592
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="p">[</span><span class="nx">a</span><span class="p">,</span><span class="w"> </span><span class="nx">b</span><span class="p">]</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">expression</span><span class="p">.</span><span class="nx">slice</span><span class="p">(</span><span class="nx">i</span><span class="p">,</span><span class="w"> </span><span class="nx">j</span><span class="p">).</span><span class="nx">split</span><span class="p">(</span><span class="s1">'/'</span><span class="p">).</span><span class="nx">map</span><span class="p">(</span><span class="nb">Number</span><span class="p">);</span>
78593
+ <span class="w"> </span><span class="nx">x</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">x</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="nx">b</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="nx">sign</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="nx">a</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="nx">y</span><span class="p">;</span>
78594
+ <span class="w"> </span><span class="nx">y</span><span class="w"> </span><span class="o">*=</span><span class="w"> </span><span class="nx">b</span><span class="p">;</span>
78595
+ <span class="w"> </span><span class="nx">i</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">j</span><span class="p">;</span>
78596
+ <span class="w"> </span><span class="p">}</span>
78597
+
78598
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">gcd</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="nx">a</span><span class="p">,</span><span class="w"> </span><span class="nx">b</span><span class="p">)</span><span class="w"> </span><span class="p">=></span><span class="w"> </span><span class="p">{</span>
78599
+ <span class="w"> </span><span class="k">while</span><span class="w"> </span><span class="p">(</span><span class="nx">b</span><span class="w"> </span><span class="o">!==</span><span class="w"> </span><span class="mf">0</span><span class="p">)</span><span class="w"> </span><span class="p">{</span>
78600
+ <span class="w"> </span><span class="p">[</span><span class="nx">a</span><span class="p">,</span><span class="w"> </span><span class="nx">b</span><span class="p">]</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">[</span><span class="nx">b</span><span class="p">,</span><span class="w"> </span><span class="nx">a</span><span class="w"> </span><span class="o">%</span><span class="w"> </span><span class="nx">b</span><span class="p">];</span>
78601
+ <span class="w"> </span><span class="p">}</span>
78602
+ <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">abs</span><span class="p">(</span><span class="nx">a</span><span class="p">);</span>
78603
+ <span class="w"> </span><span class="p">};</span>
78604
+
78605
+ <span class="w"> </span><span class="kd">const</span><span class="w"> </span><span class="nx">z</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nx">gcd</span><span class="p">(</span><span class="nx">x</span><span class="p">,</span><span class="w"> </span><span class="nx">y</span><span class="p">);</span>
78606
+ <span class="w"> </span><span class="nx">x</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">floor</span><span class="p">(</span><span class="nx">x</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="nx">z</span><span class="p">);</span>
78607
+ <span class="w"> </span><span class="nx">y</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="nb">Math</span><span class="p">.</span><span class="nx">floor</span><span class="p">(</span><span class="nx">y</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="nx">z</span><span class="p">);</span>
78608
+
78609
+ <span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="sb">`</span><span class="si">${</span><span class="nx">x</span><span class="si">}</span><span class="sb">/</span><span class="si">${</span><span class="nx">y</span><span class="si">}</span><span class="sb">`</span><span class="p">;</span>
78610
+ <span class="p">};</span>
78611
+ </code></pre></div></td></tr></table></div>
78612
+ </div>
78525
78613
</div>
78526
78614
</div>
78527
78615
<!-- solution:end -->
@@ -78555,6 +78643,11 @@ <h3 id="solution-1">Solution 1</h3>
78555
78643
78556
78644
<nav>
78557
78645
78646
+ <a href="https://github.com/AE-Hertz" class="md-author" title="@AE-Hertz">
78647
+
78648
+ <img src="https://avatars.githubusercontent.com/u/93651229?v=4&size=72" alt="AE-Hertz">
78649
+ </a>
78650
+
78558
78651
<a href="https://github.com/yanglbme" class="md-author" title="@yanglbme">
78559
78652
78560
78653
<img src="https://avatars.githubusercontent.com/u/21008209?v=4&size=72" alt="yanglbme">
0 commit comments