news 2026/4/16 21:33:12

逆向处理|并查集

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
逆向处理|并查集

Solve and verify once it occurs

lc924

逆向思维 抽象为 连通块问题

在恶意软件传播的网络中,从初始感染节点里删一个节点,找出能让最终感染节点数最少的节点,若有多个则返回索引最小的

DFS遍历未感染节点连通域

统计仅受单个初始感染节点影响的区域大小,找到删除后能最大程度减少感染的初始节点,无则返回初始节点中的最小值

924题

并查集/DFS统计感染源支配的连通域,选删除后减少感染最多的节点

928题

DFS标记单感染源连通域,计算删除节点后可保护的节点数,选最优节点(多解选索引最小)

class Solution {
public:
int minMalwareSpread(vector<vector<int>>& graph, vector<int>& initial)

{
unordered_set<int> st(initial.begin(), initial.end());
vector<int> vis(graph.size());
int node_id, size;
function<void(int)> dfs = [&](int x) {
vis[x] = true;
size++;
for (int y = 0; y < graph[x].size(); y++) {
if (graph[x][y] == 0) {
continue;
}
if (st.contains(y)) {
// 按照 924 题的状态机更新 node_id
// 注意避免重复统计,例如上图中的 0 有两条不同路径可以遇到 1
if (node_id != -2 && node_id != y) {
node_id = node_id == -1 ? y : -2;
}
} else if (!vis[y]) {
dfs(y);
}
}
};

unordered_map<int, int> cnt;
for (int i = 0; i < graph.size(); i++) {
if (vis[i] || st.contains(i)) {
continue;
}
node_id = -1;
size = 0;
dfs(i);
if (node_id >= 0) { // 只找到一个在 initial 中的节点
// 删除节点 node_id 可以让 size 个点不被感染
cnt[node_id] += size;
}
}

int max_cnt = 0;
int min_node_id = 0;
for (auto [node_id, c] : cnt) {
if (c > max_cnt || c == max_cnt && node_id < min_node_id) {
max_cnt = c;
min_node_id = node_id;
}
}
return cnt.empty() ? ranges::min(initial) : min_node_id;
}
};

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 18:17:47

开源社区贡献指南:如何为Sambert-Hifigan提交PR修复bug

开源社区贡献指南&#xff1a;如何为Sambert-Hifigan提交PR修复bug &#x1f3af; 为什么参与开源&#xff1f;从一次依赖冲突修复说起 在语音合成领域&#xff0c;ModelScope 的 Sambert-HifiGan 模型因其高质量的中文多情感语音生成能力&#xff0c;已成为许多开发者构建TT…

作者头像 李华
网站建设 2026/4/16 12:23:28

完整示例:用 CSS vh 创建响应式图文卡片

用 CSSvh打造真正自适应的图文卡片&#xff1a;一次讲透原理与实战你有没有遇到过这样的问题&#xff1f;在电脑上看得好好的图文卡片&#xff0c;到了手机上却变得又矮又挤&#xff0c;文字溢出、图片变形&#xff0c;甚至部分内容直接被裁掉看不见。更糟的是&#xff0c;为了…

作者头像 李华
网站建设 2026/4/16 12:28:23

论文写作AI工具大盘点:8个平台深度测评,智能降重与自动改写全解析

当前AI论文辅助工具市场竞争激烈&#xff0c;各平台在降重优化、AIGC检测规避及学术写作功能上各具特色。经实测验证&#xff0c;主流工具在文本重构精度、语法规范性及操作界面友好度方面表现差异显著&#xff0c;其中基于Transformer架构的智能改写系统在学术术语适配性和逻辑…

作者头像 李华
网站建设 2026/4/16 12:59:49

游戏NPC语音生成:Sambert-Hifigan支持多情绪对白自动合成

游戏NPC语音生成&#xff1a;Sambert-Hifigan支持多情绪对白自动合成 引言&#xff1a;让游戏角色“声”动起来——中文多情感语音合成的突破 在现代游戏开发中&#xff0c;NPC&#xff08;非玩家角色&#xff09;不仅是剧情推进的关键载体&#xff0c;更是营造沉浸式体验的重要…

作者头像 李华
网站建设 2026/4/16 11:26:52

Kubernetes集群部署:大规模并发生成场景应对策略

Kubernetes集群部署&#xff1a;大规模并发生成场景应对策略 背景与挑战&#xff1a;AI视频生成服务的高并发需求 随着AIGC技术的快速发展&#xff0c;图像转视频&#xff08;Image-to-Video&#xff09;类应用正从实验性工具演变为可落地的内容生产引擎。以I2VGen-XL模型驱动的…

作者头像 李华
网站建设 2026/4/15 20:26:17

Sambert-HifiGan源码解读:从文本到语音的完整流程

Sambert-HifiGan源码解读&#xff1a;从文本到语音的完整流程 &#x1f4cc; 引言&#xff1a;中文多情感语音合成的技术演进与实践价值 随着智能客服、虚拟主播、有声阅读等应用场景的爆发式增长&#xff0c;高质量的中文多情感语音合成&#xff08;Text-to-Speech, TTS&#…

作者头像 李华