|
63413 | 63413 | </span>
|
63414 | 63414 | </a>
|
63415 | 63415 |
|
| 63416 | +</li> |
| 63417 | + |
| 63418 | + <li class="md-nav__item"> |
| 63419 | + <a href="#solution-2-simple-method" class="md-nav__link"> |
| 63420 | + <span class="md-ellipsis"> |
| 63421 | + Solution 2: Simple Method |
| 63422 | + </span> |
| 63423 | + </a> |
| 63424 | + |
63416 | 63425 | </li>
|
63417 | 63426 |
|
63418 | 63427 | </ul>
|
@@ -78211,6 +78220,82 @@ <h3 id="solution-1">Solution 1</h3>
|
78211 | 78220 | </div>
|
78212 | 78221 | <!-- solution:end -->
|
78213 | 78222 |
|
| 78223 | +<!-- solution:start --> |
| 78224 | + |
| 78225 | +<h3 id="solution-2-simple-method">Solution 2: Simple Method</h3> |
| 78226 | +<p>Problems needed to solve:</p> |
| 78227 | +<ol> |
| 78228 | +<li>How do we maintain the link state between each node and the others? 如</li> |
| 78229 | +<li>How can one determine whether multiple points form a connected graph?</li> |
| 78230 | +</ol> |
| 78231 | +<p>For the first one: we can maintain each node's connection set(including itself).</p> |
| 78232 | +<p>For the second one: After solving the first one, we can see:</p> |
| 78233 | +<ul> |
| 78234 | +<li>the node itself includes every node in the connected graph(including itself).</li> |
| 78235 | +<li>and only connected to the nodes in the connected graph.</li> |
| 78236 | +</ul> |
| 78237 | +<p>Take example 1 to explain:</p> |
| 78238 | +<ul> |
| 78239 | +<li>Node 5's connected node is itself, so it is a connected graph.</li> |
| 78240 | +<li>Node 0's connected 0, 1, 2. Same as nodes 1, 2.</li> |
| 78241 | +<li>Nodes 3 and 4 also include themselves and each other.</li> |
| 78242 | +</ul> |
| 78243 | +<div class="tabbed-set tabbed-alternate" data-tabs="2:1"><input checked="checked" id="__tabbed_2_1" name="__tabbed_2" type="radio" /><div class="tabbed-labels"><label for="__tabbed_2_1">C++</label></div> |
| 78244 | +<div class="tabbed-content"> |
| 78245 | +<div class="tabbed-block"> |
| 78246 | +<div class="highlight"><table class="highlighttable"><tr><td class="linenos"><div class="linenodiv"><pre><span></span><span class="normal"> 1</span> |
| 78247 | +<span class="normal"> 2</span> |
| 78248 | +<span class="normal"> 3</span> |
| 78249 | +<span class="normal"> 4</span> |
| 78250 | +<span class="normal"> 5</span> |
| 78251 | +<span class="normal"> 6</span> |
| 78252 | +<span class="normal"> 7</span> |
| 78253 | +<span class="normal"> 8</span> |
| 78254 | +<span class="normal"> 9</span> |
| 78255 | +<span class="normal">10</span> |
| 78256 | +<span class="normal">11</span> |
| 78257 | +<span class="normal">12</span> |
| 78258 | +<span class="normal">13</span> |
| 78259 | +<span class="normal">14</span> |
| 78260 | +<span class="normal">15</span> |
| 78261 | +<span class="normal">16</span> |
| 78262 | +<span class="normal">17</span> |
| 78263 | +<span class="normal">18</span> |
| 78264 | +<span class="normal">19</span> |
| 78265 | +<span class="normal">20</span> |
| 78266 | +<span class="normal">21</span> |
| 78267 | +<span class="normal">22</span> |
| 78268 | +<span class="normal">23</span> |
| 78269 | +<span class="normal">24</span></pre></div></td><td class="code"><div><pre><span></span><code><span class="k">class</span><span class="w"> </span><span class="nc">Solution</span><span class="w"> </span><span class="p">{</span> |
| 78270 | +<span class="k">public</span><span class="o">:</span> |
| 78271 | +<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">countCompleteComponents</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">n</span><span class="p">,</span><span class="w"> </span><span class="n">vector</span><span class="o"><</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">>>&</span><span class="w"> </span><span class="n">edges</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> |
| 78272 | +<span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span> |
| 78273 | +<span class="w"> </span><span class="n">vector</span><span class="o"><</span><span class="n">set</span><span class="o"><</span><span class="kt">int</span><span class="o">>></span><span class="w"> </span><span class="n">m</span><span class="p">(</span><span class="n">n</span><span class="w"> </span><span class="o">+</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"> </span><span class="n">set</span><span class="o"><</span><span class="kt">int</span><span class="o">></span><span class="p">());</span> |
| 78274 | +<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="o"><</span><span class="w"> </span><span class="n">n</span><span class="p">;</span><span class="w"> </span><span class="n">i</span><span class="o">++</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> |
| 78275 | +<span class="w"> </span><span class="n">m</span><span class="p">[</span><span class="n">i</span><span class="p">].</span><span class="n">insert</span><span class="p">(</span><span class="n">i</span><span class="p">);</span> |
| 78276 | +<span class="w"> </span><span class="p">}</span> |
| 78277 | +<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="k">auto</span><span class="w"> </span><span class="n">x</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="n">edges</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> |
| 78278 | +<span class="w"> </span><span class="n">m</span><span class="p">[</span><span class="n">x</span><span class="p">[</span><span class="mi">0</span><span class="p">]].</span><span class="n">insert</span><span class="p">(</span><span class="n">x</span><span class="p">[</span><span class="mi">1</span><span class="p">]);</span> |
| 78279 | +<span class="w"> </span><span class="n">m</span><span class="p">[</span><span class="n">x</span><span class="p">[</span><span class="mi">1</span><span class="p">]].</span><span class="n">insert</span><span class="p">(</span><span class="n">x</span><span class="p">[</span><span class="mi">0</span><span class="p">]);</span> |
| 78280 | +<span class="w"> </span><span class="p">}</span> |
| 78281 | +<span class="w"> </span><span class="n">map</span><span class="o"><</span><span class="n">set</span><span class="o"><</span><span class="kt">int</span><span class="o">></span><span class="p">,</span><span class="w"> </span><span class="kt">int</span><span class="o">></span><span class="w"> </span><span class="n">s</span><span class="p">;</span> |
| 78282 | +<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span><span class="w"> </span><span class="n">i</span><span class="w"> </span><span class="o"><</span><span class="w"> </span><span class="n">n</span><span class="p">;</span><span class="w"> </span><span class="n">i</span><span class="o">++</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> |
| 78283 | +<span class="w"> </span><span class="n">s</span><span class="p">[</span><span class="n">m</span><span class="p">[</span><span class="n">i</span><span class="p">]]</span><span class="w"> </span><span class="o">++</span><span class="p">;</span> |
| 78284 | +<span class="w"> </span><span class="p">}</span> |
| 78285 | +<span class="w"> </span><span class="k">for</span><span class="w"> </span><span class="p">(</span><span class="k">auto</span><span class="w"> </span><span class="o">&</span><span class="p">[</span><span class="n">x</span><span class="p">,</span><span class="n">y</span><span class="p">]</span><span class="w"> </span><span class="o">:</span><span class="w"> </span><span class="n">s</span><span class="p">)</span><span class="w"> </span><span class="p">{</span> |
| 78286 | +<span class="w"> </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">y</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">x</span><span class="p">.</span><span class="n">size</span><span class="p">())</span><span class="w"> </span><span class="p">{</span> |
| 78287 | +<span class="w"> </span><span class="n">ans</span><span class="w"> </span><span class="o">++</span><span class="p">;</span> |
| 78288 | +<span class="w"> </span><span class="p">}</span> |
| 78289 | +<span class="w"> </span><span class="p">}</span> |
| 78290 | +<span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="n">ans</span><span class="p">;</span> |
| 78291 | +<span class="w"> </span><span class="p">}</span> |
| 78292 | +<span class="p">};</span> |
| 78293 | +</code></pre></div></td></tr></table></div> |
| 78294 | +</div> |
| 78295 | +</div> |
| 78296 | +</div> |
| 78297 | +<!-- solution:end --> |
| 78298 | + |
78214 | 78299 | <!-- problem:end -->
|
78215 | 78300 |
|
78216 | 78301 |
|
@@ -78240,6 +78325,11 @@ <h3 id="solution-1">Solution 1</h3>
|
78240 | 78325 |
|
78241 | 78326 | <nav>
|
78242 | 78327 |
|
| 78328 | + <a href="https://github.com/DengSchoo" class="md-author" title="@DengSchoo"> |
| 78329 | + |
| 78330 | + <img src="https://avatars.githubusercontent.com/u/46556279?v=4&size=72" alt="DengSchoo"> |
| 78331 | + </a> |
| 78332 | + |
78243 | 78333 | <a href="https://github.com/yanglbme" class="md-author" title="@yanglbme">
|
78244 | 78334 |
|
78245 | 78335 | <img src="https://avatars.githubusercontent.com/u/21008209?v=4&size=72" alt="yanglbme">
|
|
0 commit comments