ZOJ 3195(LCA模板)

电商客服效率翻倍!手把手教你用影刀RPA+AI搭建智能回复系统(附实战配置) 本文详细介绍了如何利用影刀RPA+AI技术搭建电商智能客服系统,实现24小时在线回复,大幅提升客服效率。通过零代码配置、Excel词库管理和AI语义理解,系统能处理80%常规咨询,响应速度稳定在3秒内,特别适合中小电商降低成本并提升服务质量。 阅读详情

题意:给一个带权图 然后q个询问 每个询问有三个数x y z,求x y z这三个点连接起来需要多少距离。

LCA 对于每个询问求出任意两个点对的LCA 加和 / 2。


#include <iostream>
#include <algorithm>
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <vector>
#include <queue>
using namespace std;

const int dx[] = {-1, 0, 1, 0};
const int dy[] = {0, 1, 0, -1};
const int maxn = 50000 + 7;
const int INF = ~0U >> 1;

struct node { int v, val; };
struct ask  { int u, v, lca; };

vector<node> G[maxn];
vector<ask> e;
vector<int> query[maxn];
int p[maxn], ans[maxn], d[maxn], vis[maxn];
int n, q;

int Find(int x) {
    return p[x] == x ? x : p[x] = Find(p[x]);
}

void addEdge(int u, int v, int val) {
    G[u].push_back((node) {v, val});
    G[v].push_back((node) {u, val});
}

void addAsk(int u, int v) {
    e.push_back((ask) {u, v, -1});
    e.push_back((ask) {v, u, -1});
    int len = e.size() - 1;
    query[u].push_back(len - 1);
    query[v].push_back(len);
}

void init() {
    for(int i = 0; i < n; ++i) p[i] = i, G[i].clear(), query[i].clear();
    memset(d, 0, sizeof(d));
    memset(vis, 0, sizeof(vis));
    memset(ans, 0, sizeof(ans));
    e.clear();
}

void Tarjan(int u, int val) {
    vis[u] = 1;
    ans[u] = u;
    d[u] = val;
    for(int i = 0; i < G[u].size(); ++i) {
        node& to = G[u][i];
        if(!vis[to.v]) {
            Tarjan(to.v, val + to.val);
            int x = Find(u), y = Find(to.v);
            if(x != y) p[to.v] = u;
        }
    }
    for(int i = 0; i < query[u].size(); ++i) {
        int w = query[u][i];
        ask& temp = e[w];
        if(vis[temp.v]) temp.lca = e[w^1].lca = ans[Find(temp.v)];
    }
}
int main() {
    int u, v, val;
    int kase = 0;
    while(scanf("%d", &n) != EOF) {
        init();
        for(int i = 0; i < n - 1; ++i) {
            scanf("%d%d%d", &u, &v, &val);
            addEdge(u, v, val);
        }
        scanf("%d", &q);
        int x, y, z;
        for(int i = 0; i < q; ++i) {
            scanf("%d%d%d", &x, &y, &z);
            addAsk(x, y);
            addAsk(x, z);
            addAsk(y, z);
        }
        if(kase) puts("");
        kase++;
        Tarjan(0, 0);
        int ans = 0;
        for(int i = 0; i < 3 * q; ++i) {
            ans += (d[e[i*2].u] + d[e[i*2].v] - 2 * d[e[i*2].lca]);
            if(i % 3 == 2) {
                printf("%d\n", ans / 2);
                ans = 0;
            }
        }
    }
    return 0;
}


PCB布局规范及其注意事项(纯干货) 这样做的好处是信号1,3层不会有串扰,4和5作为电源有紧密的耦合,3个信号层都有GND平面可以参考,且不会互相产生串扰,唯一的缺点是布线的层面只有3个信号层(信号03的是最适合来传输高速信号,因为该层的二面都有屏蔽,防止干扰传出,也防止干扰传入)33、影响阻抗匹配的参数(ER介电常数(1GHZ以下默认为4.2,以上的话问板厂),H介质厚度(就是内层压合的PP片厚度),W走线的线宽,T走线的厚度(铜厚/减小线的厚度可以增大阻抗))我这里使用的是CITS25来计算阻抗。 阅读详情

相关推荐

避开这些坑!医疗影像数据增强的6个安全操作指南(附PyTorch代码)

本文详细介绍了医疗影像数据增强的六大安全准则,包括解剖结构守恒、密度值物理意义保留和病灶特征保护等关键原则,并提供了PyTorch实战代码。通过具体案例和参数建议,帮助开发者在肺结节检测和MRI分割等医疗AI应用中实现安全有效的数据增强,避免因不当操作导致的诊断误差。

cola5的博客 553

zoj 3195 Design the city LCA Tarjan

题目链接 : ZOJ Problem Set - 3195 题目大意: 求三点之间的最短距离 思路: 有了两点之间的最短距离求法,不难得出: 对于三个点我们两两之间求最短距离 得到 d1 d2 d3 那么最短距离就是 d = ( d1 + d2 + d3 ) / 2 要注意每个数组的范围大小,因为这个问题手抖敲错,TLE+RE一整页/(ㄒoㄒ)/~~ 用前向星来保存边和询问,空...

ddqb3235的博客 180

AI 帮我写单测:pytest 覆盖率提升 40% 的协作日志

AI助力pytest测试覆盖率提升40%的实践总结 本文分享了作者通过AI协作提升Python项目测试覆盖率的实践经验。初始测试覆盖率仅45%的电商后端项目,通过系统化的AI协作策略(代码分析、场景矩阵设计、迭代优化)实现了显著改进。AI不仅生成312个高质量测试用例,更提供了测试设计思路和最佳实践建议。最终覆盖率提升至85%,发现并修复23个潜在bug,效率提升3倍。文章详细展示了用户服务、订单服务等核心模块的测试案例,以及分层Fixture设计、参数化测试等高级技巧。关键成功因素包括明确的协作边界、迭代

摘星编程的博客 3272

ZOJ - 3195 -- Design the city

题目来源:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3195 给定一棵树,查询连通任意三点的路径的总长度。 设给定的三点为x,y,z。三点之间的路径总长度=(lca(x,y)+lca(y,z)+lca(x,z))/2。 代码: #include &lt;cstdio&gt; #include &lt;cstr...

No cost too great! 209

卡尔曼滤波、互补滤波与Tsinghua滤波:平衡车姿态感知的三大算法对比

本文对比了平衡车姿态感知中的卡尔曼滤波、互补滤波与Tsinghua滤波三大核心算法。互补滤波计算简单,适合入门;卡尔曼滤波理论最优但实现复杂;Tsinghua滤波则是一种面向嵌入式优化的轻量级方案,通过动态权重调整和零偏估计,在资源受限的MCU上实现了性能与效率的平衡,是智能车竞赛等场景的实用选择。

weixin_29232121的博客 349

到底什么是电源的斜波补偿,电源芯片CS引脚作用,一文讲清楚!

上文有提到电流环,其实电流环再细分也有很多模式,用的最多的是峰值电流模式峰值电流模式调节工作原理如下:(1)当输出负载增大时,输出电压降低,因此,Vc 增大,线性增加的电感电流只有升高到更大的值才能使 PWM 电流比较器翻转,开关管导通的时间增长,占空比增加,输入功率增加,因此输出电压增加,当输出电压增加到调节的范围内时,系统保持平衡。

jwgdhuwdhg的博客 1万+

ZOJ3195 Design the city

Design the city 题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3195 题意: n个节点,n-1条边,Q次询问,每次询问输出连接3个节点的最短路径。 思路: 先以0节点为根,dfs遍历所有节点,求出各节点的深度以及它们到根节点的距离。然后分别求出两两节点的最短距离,最后输出其总和的一半即可。求两节...

qq_40967246的博客 180

用AI科研绘图全新升级!借助谷歌新发布模型Nano Banana pro实测一键绘制机制图与技术路线图,直接告别文字乱码与低画质

之前有同仁反馈,用Nano Banana画科研插图的时候,要么文字部分容易乱码,要么抓不住关键内容,画出来的效果反复修改后,还是达不到理想的效果。终于在Gemini 3发布没几天,万众期待的大香蕉模型也成功升级到了Pro版本,官方名称叫“Gemini 3 Pro Image”,实际上也就是我们说的Nano Banana 2。这次的Nano Banana Pro模型,不仅可以直出4K高清图,还能自定义比例,推理能力和中文文字的稳定性也得到了提升。

智能AI让学术科研更容易 1887

zoj 3195 Design the city LCA

Design the city Time Limit: 1 Second      Memory Limit: 32768 KB Cerror is the mayor of city HangZhou. As you may know, the traffic system of this city is so terrible, that there are traffic j

Azarath Metrion Zinthos 933

Dify与第三方平台(飞书、微信、钉钉)LangBot机器人对接实战

调用链路:飞书用户发消息 → 飞书开放平台事件回调 → LangBot 服务 → Dify 应用接口 → Dify 知识库 + 大模型生成答案 → 原路返回飞书聊天框Dify:承载知识库、提示词配置、大模型调用能力;LangBot:多 IM 渠道适配器,统一对接各大 IM 开放平台与 Dify API;飞书开放平台:提供机器人消息收发、事件推送能力。LangBot 作为中间转发服务,一端对接 Dify 应用 API,一端对接飞书开放平台机器人接口;

悦分享 266

Hugging Face 最新开源 SmolVLA 小模型入门教程(一)

今天,我们介绍SmolVLA,这是一个紧凑型(450M)、开源的视觉-语言-动作模型,专为机器人设计,可在消费级硬件上运行。 仅在带有lerobot标签的开源社区共享数据集上进行预训练。 SmolVLA-450M在模拟环境(LIBERO、Meta-World)和真实世界任务(SO100、SO101)中,表现优于规模更大的VLA模型及强基线模型如ACT。 支持异步推理,响应速度提升30%,任务吞吐量提升2倍。

2506_90492529的博客 4076

ZOJ 3195 LCA转RMQ

点击打开链接 题意:输入n,接下来n-1行,每行a,b,c代表a与b有一条权值为c的边,双向边,m次询问,问最短的距离使a,b,c可以联通 思路:LCA的模版题,没什么好说的,看理论的话网上好多本弱就不说了,代码有注释,有助于理解#include #include #include #include #include #include using namespace std; ty

Dan__ge的博客 4120

NPC 三电平逆变器中点电位平衡算法详解

最常用:零序电压注入(简单、计算量小)最可靠:虚拟空间矢量调制(VSVPWM)及其改进形式(全范围平衡)趋势:结合模型预测控制(MPC)或智能算法(模糊、神经网络)进一步提升动态性能和鲁棒性。NPC 三电平逆变器中点电位平衡算法的 C# 实现示例(零序电压注入法 + 闭环补偿)在 NPC(Neutral Point Clamped)三电平逆变器中,中点电位平衡最常用且易于软件实现的方案是零序电压注入法。

专注于前沿技术的探索与实践,热衷于从代码逻辑、架构设计到行业应用等多维度深挖技术本质。期待在技术之路上与你共同成长~ 323

ZOJ 3195 Design the city (LCA 模板题)

Cerror is the mayor of city HangZhou. As you may know, the traffic system of this city is so terrible, that there are traffic jams everywhere. Now, Cerror finds out that the main reason of them i...

weixin_30938149的博客 97

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

ZOJ 题目3195 Design the city(LCA+RMQ)

Design the city Time Limit: 1 Second      Memory Limit: 32768 KB Cerror is the mayor of city HangZhou. As you may know, the traffic system of this city is so terrible, that there are traffic

Jogging_Clown 539

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

zoj3195(lca / RMQ在线)

题目链接: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3195 题意: 给出一棵 n 个节点的带边权的树, 有 q 组形如 x, y, z 的询问, 输出 x, y, z之间的最短路径. 思路: 在纸上画下不难发现 x, y, z之间的最短路径就是 x, y, z 两两之间的最短路径和的一半. 我们可...

weixin_30527143的博客 155

ZOJ 3195 LCA+RMQ+找规律

题意给三个点,求这三个点的相连最短距离。题解LCA+RMQ是模板,没什么好说的。规律的话,就是最短距离为dis[a]+dis[b]+dis[c]-dis[num[x1]]-dis[num[x2]]-dis[num[x3]]。画一下图就能发现这个规律对于所有的可能情况都是满足的。注意事项PE好几发,ORZ。。这种输入方式还搞Between Blank Line也是很有趣。。代码#include <io

zhenlingcn的博客 298

zoj 3195 Design the city

LCA 题意:给一个无根树,有q个询问,每个询问3个点,问将这3个点连起来,距离最短是多少,LCA的模板题,分别求LCA(X,Y),LCA(X,Z),LCA(Y,Z),和对应的距离,然后3个距离相加再除以2就是这个询问的结果 对于一对点,x,y, lca = LCA(x,y) , 那么点x到点y的距离为 dir[x] + dir[y] - 2 * dir[lca] ; 其中dir[u...

weixin_33852020的博客 81

ZOJ 3195 Design the city (在线LCA,4级)

J - Design the city Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%lld & %llu Submit Status Appoint description: ...

weixin_30662109的博客 58

【总结】LCA小结

这些天一直在刷LCA的题目。。LCA的题目bing

eeeaaaaa的专栏 478

【ZOJ3195】Design the City-LCA算法

【ZOJ3195】Design the City-LCA算法

Maxwei_wzj的OI世界 595

[ZOJ3195]Design the city

Cerror is the mayor of city HangZhou. As you may know, the traffic system of this city is so terrible, that there are traffic jams everywhere. Now, Cerror finds out that the main reason of them is the...

四叔的博客 261

【模板】Tarjian求LCA

概念 公共祖先,就是两个节点在这棵树上深度最大的公共的祖先节点 举个例子吧,如下图所示4和5的最近公共祖先是2,5和3的最近公共祖先是1,2和1的最近公共祖先是1。 算法 常用的求LCA的算法有:Tarjan/DFS+ST/倍增 其中 :ST和倍增都是在线的;Taijian是离线的 这里介绍离线的Tarjian算法 基本思想: 1.任选一个点为根节点,从根节点...

C@bMv7GRVt)Q 292
上一篇: LCA最近公共祖先问题(Tarjan离线算法)
下一篇: HDU 3487(伸展树模板)
THE___BEST
博客等级 码龄12年 10粉丝 85原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值