3415: 【提高】小 X 的佛光

news2025/8/4 1:19:50

3415: 【提高】小 X 的佛光

时间限制: 1.000 Sec  内存限制: 128 MB
提交: 14  解决: 7
[命题人:][下载数据: 110]

提交状态报告

题目描述

题目背景】
小 X 是远近闻名的学佛,平日里最喜欢做的事就是蒸发学水。
【题目描述】
小 X 所在的城市 X 城是一个含有 N 个节点的无向图,同时,由于 X 国是一
个发展中国家,为了节约城市建设的经费,X 国首相在建造 X 城时只建造 N – 1
条边,使得城市的各个地点能够相互到达。
小 X 计划蒸发 Q 天的学水,每一天会有一名学水从 A 地走到 B 地,并在沿
途各个地点留下一个水塘。此后,小 X 会从 C 地走到 B 地,并用佛光蒸发沿途
的水塘。由于 X 城是一个学佛横行的城市,学水留下的水塘

输入

输入格式】
从文件 light.in 中读取数据。
第一行三个整数 N、Q、NUM,分别表示 X 城地点的个数,小 X 蒸发学水的
天数,以及测试点编号。注意,测试点编号是为了让选手们更方便的获得部分分,
你可能不需要用到这则信息,在下发的样例中,测试点编号的含义是该样例满足
某一测试点限制。
N – 1 行,每行两个整数 X、Y,表示 X 地与 Y 地之间有一条边。
接下来 Q 行,每行三个整数 A、B、C,表示一天中,有一名学水从 A 地走到
B 地,而小 X 会从 C 地走到 B 地。

输出

输出格式】
输出 Q 行,每行一个整数,表示小 X 能够蒸发的水塘数

样例

输入  复制

输入】 3 3 1 1 2 2 3 1 2 3 1 1 3 3 1 3

输出  复制

提示

【数据范围及子任务】
1:第 i 条边连接第 i 和第 i + 1 个地点。
特殊性质 2:A = C
测试点编号  N  Q  特殊性质 1  特殊性质 2
1
≤10  ≤10
NO  NO
2
3
4
5
≤1000  ≤1000  6
7
8
≤10 5  ≤30  9
10
11
≤10 5  ≤10 5
YES
YES
12
NO
13
14
NO
YES
15
16  NO
17
≤2 * 10 5  ≤2 * 10 5
YES
YES
18  NO
19
NO
YES
20  NO

AC

#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#include <queue>

using namespace std;

const int maxn = 200010;

int n, q, num,head[maxn],to[maxn * 2],nextt[maxn * 2],tot = 1,dist[maxn],fa[maxn][20];

void add(int x, int y)
{
    to[tot] = y;
    nextt[tot] = head[x];
    head[x] = tot++;
}

void dfs(int u, int from, int d)
{
    dist[u] = d;
    for (int i = head[u];i;i = nextt[i])
    {
        int v = to[i];
        if (v != from)
        {
            fa[v][0] = u;
            dfs(v, u, d + 1);
        }
    }
}

int lca(int x, int y)
{
    if (x == y)
        return x;
    if (dist[x] < dist[y])
        swap(x, y);
    for (int i = 19;i >= 0; i--)
        if (dist[fa[x][i]] >= dist[y])
            x = fa[x][i];
    if (x == y)
        return x;
    for (int i = 19; i >= 0; i--)
        if (fa[x][i] != fa[y][i])
        {
            x = fa[x][i];
            y = fa[y][i];
        }
    return fa[x][0];
}

int main()
{
    scanf("%d%d%d", &n, &q, &num);
    for (int i = 1; i < n; i++)
    {
        int x, y;
        scanf("%d%d", &x, &y);
        add(x, y);
        add(y, x);
    }
    dfs(1, 0, 1);
    for (int j = 1; j <= 19; j++)
        for (int i = 1; i <= n;i++)
            fa[i][j] = fa[fa[i][j - 1]][j - 1];
    while (q--)
    {
        int a, b, c;
        scanf("%d%d%d", &a, &b, &c);
        int d = lca(a, b), e = lca(b, c), f = lca(a, c);
        if (dist[d] < dist[e])
            swap(d, e);
        if (dist[d] < dist[f])
            swap(d, f);
        printf("%d\n", dist[d] + dist[b] - 2 * dist[lca(d, b)] + 1);
    }

    return 0;
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/15834.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

XSS-labs靶场实战(二)——第4-6关

今天继续给大家介绍渗透测试相关知识&#xff0c;本文主要内容是XSS-labs靶场实战第4-6关。 免责声明&#xff1a; 本文所介绍的内容仅做学习交流使用&#xff0c;严禁利用文中技术进行非法行为&#xff0c;否则造成一切严重后果自负&#xff01; 再次强调&#xff1a;严禁对未…

Qt ARM+Linux平台调用一个库的时候,报错“Bus error”

Qt ARMLinux平台调用一个库的时候&#xff0c;报错“Bus error” 文章目录Qt ARMLinux平台调用一个库的时候&#xff0c;报错“Bus error”摘要1 字节对齐问题2内存溢出问题关键字&#xff1a; Bus error、 Qt、 Arm、 Linux、 Debian内容背景&#xff1a; 最近项目终于切到Li…

如何实现高效地扩展5G毫米波段?

如今的高频信号标准使用的是比以往更高的频率和更宽的带宽&#xff0c;经过多年的研究和测试&#xff0c;5G无线网络正在世界各地进行部署。5G利用比以前使用的频带高得多的频段和毫米波频率&#xff0c;实现了高速、宽带宽、低时延和极高的容量。 然而&#xff0c;这些高频信号…

赋能型细分定位该不该选择?—— FB推广

赋能型细分定位的作用&#xff1a; 赋能型细分定位可以使系统覆盖到比您在细分定位选项中定义的用户更为广阔的用户群体&#xff0c;从而帮助改善广告表现。&#xff08;如果了解谷歌的话&#xff0c;可以理解为搜索网络合作伙伴&#xff09; 如果您希望我们面向更多可能助您…

Nginx源码:内存池的实现

文章目录1、数据结构2、接口函数2.1、创建内存池2.2、内存分配2.2.1、小块内存分配2.2.2、大块内存分配2.3、内存释放2.3.1、大块内存释放2.3.2、内存池释放4、参考为什么需要对内存管理&#xff1f; 避免频繁的系统调用带来的开销。减少了频繁分配和释放小块内存产生的内存碎…

LeetCode刷题(python版)——Topic72. 编辑距离

一、题设 给你两个单词 word1 和 word2&#xff0c; 请返回将 word1 转换成 word2 所使用的最少操作数 。 你可以对一个单词进行如下三种操作&#xff1a; 插入一个字符删除一个字符替换一个字符 示例 1&#xff1a; 输入&#xff1a;word1 "horse", word2 &q…

回溯算法的应用

基本思想&#xff1a; 回溯法从开始结点(根结点)出发,以深度优先方式搜索整个解空间。这个开始结点成为活结点,同时也成为当前的扩展结点。在当前扩展结点处,搜索向纵深方向移至一个新结点。这个新结点成为新的活结点,开成为当前扩展结点。如果在当前扩展结点处不能再向纵深方…

大数据技术基础实验十五:Storm实验——实时WordCountTopology

大数据技术基础实验十五&#xff1a;Storm实验——实时WordCountTopology 文章目录大数据技术基础实验十五&#xff1a;Storm实验——实时WordCountTopology一、前言二、实验目的三、实验要求四、实验原理1、Topologies2、Spouts3、Bolts五、实验步骤1、导入依赖jar包2、编写代…

ffmpeg编译so

1.第一个坑&#xff1a;/bin/bash^M: bad interpreter: No such file or directory shell脚本报错/bin/bash^M: bad interpreter: No such file or directory&#xff0c;通过查阅资料得知&#xff0c;shell脚本格式必须是unix才行&#xff0c;但我这个脚本是在windows上编写完…

如何批量创建word文档并重命名?

如何批量创建word文档并重命名&#xff1f;大家请注意&#xff0c;我这里抛出的问题是批量创建word文档并重命名&#xff0c;重点在批量&#xff0c;并不是我们平时遇到的单纯创建一个或者几个word文档&#xff0c;而是批量创建几十上百个甚至几百上千个word文档。创建几个word…

英国博士后招聘|约克大学—核磁共振监测催化

英国约克大学博士后职位—核磁共振监测催化 约克大学&#xff08;University of York&#xff09;&#xff0c;建于1963年&#xff0c;是一所位于英国英格兰约克的研究型公立大学&#xff0c;英国罗素大学集团、世界大学联盟、N8大学联盟、白玫瑰大学联盟和江苏—英国高水平大学…

【开发心得】Java ftp开发注意事项

前言: 虽说已经2022年了&#xff0c;但是ftp上传方式还是有一定使用场景的&#xff0c;关于java的ftp上传下载实现&#xff0c;基本都指向了apache commont net 库。 代码实现可以参考:https://blog.csdn.net/tianshan2010/article/details/103690940 或者其他类似的文章&…

云服务--漏洞修复

1、Spring Security 身份认证绕过漏洞(CVE-2022-22978) Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。 Spring Security存在身份认证绕过漏洞 &#xff0c;当Spring Security中使用RegexRequestMatcher进行权限配置&#…

汽车云算力“竞速”,个性化进阶成新风向

配图来自Canva可画 随着产业互联网的持续推进&#xff0c;云服务逐渐深入各行各业&#xff0c;云服务厂商也专门推出各种面向特定行业的专属云&#xff0c;比如金融云、零售云、政务云等等。如今云服务厂商正把焦点深入到汽车领域&#xff0c;围绕“汽车云”展开新的角逐。 今…

LeetCode[662]二叉树的最大宽度

难度&#xff1a;中等 题目&#xff1a; 给你一棵二叉树的根节点 root &#xff0c;返回树的 最大宽度 。 描述&#xff1a; 树的 最大宽度 是所有层中最大的 宽度 。 每一层的 宽度 被定义为该层最左和最右的非空节点&#xff08;即&#xff0c;两个端点&#xff09;之间的长…

麦子-linux驱动策略与框架

一、linux内核同步和互斥 信号量&#xff08;进程与进程&#xff09; 当进程A执行共享资源先加锁执行down表示占用资源&#xff0c;进程B想执行就会被dowm&#xff0c;导致陷入睡眠 当进程A行完了就会up释放资源&#xff0c;我们其他线程执行这个共享资源就不会被dowm睡眠 自旋…

蓝桥杯入门即劝退(十)反转链表

----------持续更新蓝桥杯入门系列算法实例------------ 如果你也喜欢Java和算法&#xff0c;欢迎订阅专栏共同学习交流&#xff01; 你的点赞、关注、评论、是我创作的动力&#xff01; -------希望我的文章对你有所帮助-------- 前言&#xff1a;如果有一定链表基础&#…

【图像处理】基于形状提取和模式匹配组合的面部特征点提取方法(Matlab代码实现)

&#x1f468;‍&#x1f393;个人主页&#xff1a;研学社的博客 &#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜…

7天酒店斩获五洲钻石奖“年度投资价值酒店连锁品牌” 打造酒店投资极致性价比

近日&#xff0c;“2022文旅国际峰会暨第十五届世界酒店论坛”在海南隆重召开&#xff0c;300多位来自中外的业界精英和跨界企业家代表等受邀参加&#xff0c;齐聚行业盛会。同期&#xff0c;“第十四届五洲钻石奖”也正式揭晓&#xff0c;7天酒店在众多品牌中脱颖而出&#xf…

【原创】使用Golang的电商搜索技术架构实现

作者&#xff1a;黑夜路人 时间&#xff1a;2022年11月 一、背景&#xff1a; 现在搜索技术已经是非常主流的应用技术&#xff0c;各种优秀的索引开源软件已经很普遍了&#xff0c;比如 Lucene/Solr/Elasticsearch 等等主流搜索索引开源软件&#xff0c;让我们搭建一个优秀的…