mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-11 02:58:13 +08:00
50 lines
2.7 KiB
HTML
50 lines
2.7 KiB
HTML
|
<p>给你一个 <code>n</code> 个点的无向图,节点从 <code>0</code> 到 <code>n - 1</code> 编号。给你一个长度为 <code>n</code> 下标从 <strong>0</strong> 开始的整数数组 <code>vals</code> ,其中 <code>vals[i]</code> 表示第 <code>i</code> 个节点的值。</p>
|
|||
|
|
|||
|
<p>同时给你一个二维整数数组 <code>edges</code> ,其中 <code>edges[i] = [a<sub>i</sub>, b<sub>i</sub>]</code> 表示节点 <code>a<sub>i</sub></code> 和 <code>b<sub>i</sub></code> 之间有一条双向边。</p>
|
|||
|
|
|||
|
<p><strong>星图</strong> 是给定图中的一个子图,它包含一个中心节点和 <code>0</code> 个或更多个邻居。换言之,星图是给定图中一个边的子集,且这些边都有一个公共节点。</p>
|
|||
|
|
|||
|
<p>下图分别展示了有 <code>3</code> 个和 <code>4</code> 个邻居的星图,蓝色节点为中心节点。</p>
|
|||
|
|
|||
|
<p><img alt="" src="https://assets.leetcode.com/uploads/2022/11/07/max-star-sum-descdrawio.png" style="width: 400px; height: 179px;"></p>
|
|||
|
|
|||
|
<p><strong>星和</strong> 定义为星图中所有节点值的和。</p>
|
|||
|
|
|||
|
<p>给你一个整数 <code>k</code> ,请你返回 <strong>至多</strong> 包含 <code>k</code> 条边的星图中的 <strong>最大星和</strong> 。</p>
|
|||
|
|
|||
|
<p> </p>
|
|||
|
|
|||
|
<p><strong>示例 1:</strong></p>
|
|||
|
|
|||
|
<p><img alt="" src="https://assets.leetcode.com/uploads/2022/11/07/max-star-sum-example1drawio.png" style="width: 300px; height: 291px;"></p>
|
|||
|
|
|||
|
<pre><b>输入:</b>vals = [1,2,3,4,10,-10,-20], edges = [[0,1],[1,2],[1,3],[3,4],[3,5],[3,6]], k = 2
|
|||
|
<b>输出:</b>16
|
|||
|
<b>解释:</b>上图展示了输入示例。
|
|||
|
最大星和对应的星图在上图中用蓝色标出。中心节点是 3 ,星图中还包含邻居 1 和 4 。
|
|||
|
无法得到一个和大于 16 且边数不超过 2 的星图。
|
|||
|
</pre>
|
|||
|
|
|||
|
<p><strong>示例 2:</strong></p>
|
|||
|
|
|||
|
<pre><b>输入:</b>vals = [-5], edges = [], k = 0
|
|||
|
<b>输出:</b>-5
|
|||
|
<b>解释:</b>只有一个星图,就是节点 0 自己。
|
|||
|
所以我们返回 -5 。
|
|||
|
</pre>
|
|||
|
|
|||
|
<p> </p>
|
|||
|
|
|||
|
<p><strong>提示:</strong></p>
|
|||
|
|
|||
|
<ul>
|
|||
|
<li><code>n == vals.length</code></li>
|
|||
|
<li><code>1 <= n <= 10<sup>5</sup></code></li>
|
|||
|
<li><code>-10<sup>4</sup> <= vals[i] <= 10<sup>4</sup></code></li>
|
|||
|
<li><code>0 <= edges.length <= min(n * (n - 1) / 2</code><code>, 10<sup>5</sup>)</code></li>
|
|||
|
<li><code>edges[i].length == 2</code></li>
|
|||
|
<li><code>0 <= a<sub>i</sub>, b<sub>i</sub> <= n - 1</code></li>
|
|||
|
<li><code>a<sub>i</sub> != b<sub>i</sub></code></li>
|
|||
|
<li><code>0 <= k <= n - 1</code></li>
|
|||
|
</ul>
|