[BZOJ1787]AHOI2008 紧急集合|LCA

LDPC码译码原理——概率公式推导 怎么说呢,一直以来都想写一下博客。近半年多来我一直在学习LDPC码译码上的东西,主要是在FPGA实现上的,所以这次想写一些关于这方面的内容,包括译码的原理、仿真以及实现。(当然是基于准循环LDPC码上实现的)不过呢,我写这个的初衷是为了让初学者理解入门用的,而不是在大牛面前班门弄斧,有错误之处欢迎大家批评指正。不知道会不会有人一开始像我一样,为了学好LDPC码,先去好好了解其它的诸如RS码或者是卷... 阅读详情

仔细想想就是水题,找出三个点两两之间的LCA,必然会出现至少有两个LCA相同,因为肯定要有两个人先走到一起再往上走嘛,或者就是三个都相同了。。那么走到不同的LCA就是要走到的点,因为这个LCA只会使一个点走远路嘛。。

#include<cstdio>
#define N 500005
#include<iostream>
using namespace std;
struct edge{
	int e,next;
} ed[N*2];
int n,m,s,e,c,i,ne=0,f1,f2,f3,a[N],fa[N][22],d[N];
void add(int s,int e)
{
	ed[++ne].e=e;ed[ne].next=a[s];a[s]=ne;
}
void dfs(int x)
{
	for (int j=1;j<21;j++) fa[x][j]=fa[fa[x][j-1]][j-1];
	for (int j=a[x];j;j=ed[j].next)
		if (ed[j].e!=fa[x][0])
		{
			fa[ed[j].e][0]=x;d[ed[j].e]=d[x]+1;
			dfs(ed[j].e);
		}
}
int lca(int x,int y)
{
	if (d[x]>d[y]) swap(x,y);
	for (int j=20;j>=0;j--) if (fa[y][j]&&d[fa[y][j]]>=d[x]) y=fa[y][j];
	for (int j=20;j>=0;j--) if (fa[x][j]!=fa[y][j]) x=fa[x][j],y=fa[y][j];
	if (x==y) return y; else return fa[y][0];
}
int main()
{
	scanf("%d%d",&n,&m);
	for (i=1;i<n;i++)
	{
		scanf("%d%d",&s,&e);
		add(s,e);add(e,s);
	}
	fa[1][0]=0;d[1]=0;dfs(1);
	for (i=1;i<=m;i++)
	{
		scanf("%d%d%d",&s,&e,&c);
		f1=lca(s,e);f2=lca(e,c);f3=lca(s,c);
		if (f1==f2)
		{
			printf("%d %d\n",f3,d[e]-d[f1]-d[f1]+d[s]-d[f3]+d[c]);
			continue;
		}
		else if (f1==f3)
		{
			printf("%d %d\n",f2,d[e]-d[f1]+d[s]-d[f1]+d[c]-d[f2]);
			continue;
		}
		else 
		{
			printf("%d %d\n",f1,d[s]-d[f2]+d[c]-d[f2]+d[e]-d[f1]);
			continue;
		}
	}
}


CST-Python(Pycharm如何与CST联合仿真,获取S参数) 我们想使用Python与CST联合仿真,其实是不需要自己下载Python的,因为CST在下载的时候就自带了Python3.6,我们只需要找到并将软件的环境设置到相应位置,即可联合仿真。(我的保存路径为D:\Program Files (x86)\CST Studio Suite 2020,在寻找时可以将前面切换成自己的保存路径,后面不需要修改)在CST帮助文档(打开CST软件,按F11即可直接访问帮助文档)里面,进行如下操作,便可以看到CST适配的Python版本为Python3.6! 阅读详情

相关推荐

13-单片机模块化程序: 单片机AT指令配置模块程序模板(非阻塞版)

资料源码:https://gitee.com/yang456/OpenProgrammingModuleForMCU.git 点击加入群聊【单片机,物联网,上位机】: 说明1:知识从未如此性感。 烂程序员关心的是代码,好程序员关心的是数据结构和它们之间的关系! 说明2:学的是思想,而非程序!此代码思路适用于所有的单片机。 说明3:学会以后,下面的代码可能会跟你一辈子! 说明4:这一系列文章是为大幅度裁剪本人博客文章!使博客文章更有条理。便于推其它教程! 拷贝这两个文件到自己的工程 ..

杨奉武的博客 1280

洛谷 P4281 [AHOI2008]紧急集合 / 聚会(树剖+lca)

如果有两个点,那么最短的位置一定是两点中的 lca,此时有三个点,我们观察 6 3 1 这组询问,如上图所示: 最后的答案为 2,也就是 3 6 的 lca,不妨可以猜测,最后的位置一定是在某两点的 lca 处,所以枚举即可 代码并没有采用倍增,而是采用树剖来处理 lca const int N=5e5+5; int n,m; int i,j,k; int a[N]; vector<int> G[N]; int dep[N],fa...

C_Dreamy的博客 488

STM32F407 UART4串口DMA收发实战:告别频繁中断,用空闲中断+DMA搞定不定长数据

本文详细介绍了STM32F407 UART4串口结合DMA和空闲中断实现高效不定长数据收发的实战方案。通过DMA硬件级数据搬运和空闲中断智能帧检测,显著降低CPU占用率,提升通信效率,适用于工业传感器数据采集和智能设备通信场景。

weixin_42631411的博客 154

洛谷 P4281 [AHOI2008]紧急集合 / 聚会(树上倍增 LCA)

欢乐岛上有个非常好玩的游戏,叫做“紧急集合”。在岛上分散有 nnn 个等待点,有 n−1n-1n−1 条道路连接着它们,每一条道路都连接某两个等待点,且通过这些道路可以走遍所有的等待点,通过道路从一个点到另一个点要花费一个游戏币。参加游戏的人三人一组,开始的时候,所有人员均任意分散在各个等待点上(每个点同时允许多个人等待),每个人均带有足够多的游戏币(用于支付使用道路的花费)、地图(标明等待点之间道路连接的情况)以及对话机(用于和同组的成员联系)。当集合号吹响后,每组成员之间迅速联系,了解到自己组所有成员所

Jacob0824的博客 592

西门子博图编程:使用S7-1500冗余PLC 建立ModbusTCP通信

文章目录1.1 网络结构1.2 系统 IP 介绍1.3 Modbus TCP 通讯编程1.3.1 CPU 做服务器 1.1 网络结构 以 CPU151 7H 为例, 网络结构示意如下图所示: CPU 1517H 冗余 PLC 有 PROFINET X1 接口和 X2 接口, Modbus TCP 通讯可以将设备(例如 Standard PLC)通过交换机接入到任何网络接口中。如果接入 X1 接口,需要通过交换机接入到 MRP 环网中,但是并不需要支持 H-sync 转发。如果接入 X2 接口,只需要使

2万+

GVINS数据采集(u-blox fp9 + D435i)

1、配置千寻的RTK账号 采集数据当天购买千寻的RTK账号,然后在Window下,输入账号和密码 (具体的步骤如之前面连接所示),查看u-center软件上的信息,确保接收机可以收到RTK信息; 2、查看Linux系统下u-blox是否可以正常接受GPS信号和RTK数据流 1、GPS信号信息 // 打开端口 1 cd ublox_f9p/src // 或者在终端1下也可以 source devel/setup.bash r.....................

努力努力努力 2609

bzoj 1787 [Ahoi2008]Meet 紧急集合(1832 [AHOI2008]聚会)

1787: [Ahoi2008]Meet 紧急集合 Time Limit: 20 Sec  Memory Limit: 162 MBSubmit: 1841  Solved: 857[Submit][Status][Discuss] Description Input Output Sample Input 6 4 1 2 2 3 2 4 4 5

hahalidaxin的专栏 532

【33】软考软件设计师——算法题(二):贪心法与回溯法深度精讲|第4题进阶满分攻略

本文是《软件设计师·50讲通关|从零基础到工程师职称》专栏第33篇,承接第32篇分治法与动态规划,聚焦**下午第4题算法大题进阶核心**,详解贪心法与回溯法两大高频难点算法。全文超4000字深度拆解贪心法核心原理、贪心选择性质、局部最优推全局最优的底层逻辑,厘清贪心算法适用边界与经典误区;深挖回溯法深度优先遍历思想、递归回溯三步流程、可行性剪枝与最优性剪枝两大核心技巧;全覆盖活动选择、零钱兑换、01背包贪心禁区、八皇后、全排列等软考必考经典题型;配套标准化算法框架代码、考场填空模板、剪枝优化实操案例

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 438

[AHOI2008]紧急集合 / 聚会

传送门 这题题面有毒,其实就是让你求将树上三个点都移到任意一点,三个点最少一共经过多少条边。 在某种意义上可以理解为三个点的LCA? 显然我们会将这三个点移到其中两个点的LCA上去。那么具体选择哪个LCA呢? 我们发现,要么三个点的LCA都相同,这个时候只有一种选择;绝对不可能出现三个点的LCA都不同的情况。很容易证明,这里略去。 那么如果有两个点的LCA相同呢?我们会选择那个“与众不同”的LCA。 因为我们如果选这两个相同的LCA做三个点的相遇点,就会产生两个点经过了重复的边的情况,血亏啊。 结合一张图来

jvruo_shabi的博客 341

Python 爬虫实战:爬虫与 ECharts 结合 —— 前端可视化展示

本文介绍了爬虫技术与ECharts可视化结合的完整实现流程。首先使用Python爬取京东商品数据(价格、评价数等),通过BeautifulSoup解析和pandas处理转换为JSON格式。然后构建前端页面,利用ECharts实现价格分布柱状图、价格-评价数散点图和店铺占比饼图三种可视化效果。文章详细解析了爬虫数据提取、格式转换和前端图表配置等关键技术点,并提供了完整的代码示例。最后提出了基于API接口、数据库存储等扩展方向,为数据采集到可视化展示提供了完整的解决方案。

2503_91057718的博客 631

情感分析在金融领域的应用:舆情影响股价预测

我们都知道,股价的波动受到多种因素的影响,而大众的情绪和看法就是其中很重要的一部分。我们在日常生活中都有根据别人的评价来判断事物好坏的经验,在金融市场里,舆情就像是大众对某家公司的集体评价,它能反映出市场参与者的情绪和预期。学习这方面的知识,能帮助投资者更好地把握市场动态,做出更明智的投资决策,无论是个人投资者还是金融机构的分析师,都能从中受益。有一天,你看到某家知名企业被曝光了严重的产品质量问题,新闻铺天盖地,股民们也都在热议纷纷,负面情绪弥漫。这时,你会不会觉得这家公司的股价可能要下跌了呢?

AI 原生应用开发的博客 1146

【BZOJ 1832】【AHOI 2008】聚会 &【BZOJ 1787】Meet 紧急集合

Description 给出一颗树,求点X使点x,y,z到它的距离最短,并求出来。 Solution 先把x,y,z的两两LCA求出来, 可以证明一定至少会有两个LCA使一样的,而X点就是与其他两个不同的那个, 于是就可以乱搞一波, (本来想偷懒,结果WA了…QAQ) 复杂度:O(m∗log2(n))O(m*\log_2(n))

965

YOLO26优化:注意力魔改 | 用于微小目标检测的上下文增强和特征细化网络ContextAggregation,助力小目标检测,暴力涨点

用于微小目标检测的上下文增强和特征细化网络ContextAggregation,助力小目标检测

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 487

[bzoj1787][Ahoi2008]Meet 紧急集合 倍增LCA

1787: [Ahoi2008]Meet 紧急集合Time Limit: 20 Sec Memory Limit: 162 MB Submit: 999999999 Solved: 999999999Description Input Output Sample Input 6 4 1 2 2 3 2 4 4 5 5 6 4 5 6 6 3 1

Unlimited Code Works 1141

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

【BZOJ1787】【Ahoi2008】Meet 紧急集合 LCA、双倍经验

233…… 【BZOJ1832】【AHOI2008】聚会 倍增lca 就是这道题。输入输出都没有改。 http://blog.youkuaiyun.com/vmurder/article/details/42607739 题解也在以前那篇博客里面。 代码:(直接复制的那篇博客) #include #include #include #include #define N

辗转山河弋流歌 1674

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

bzoj 1787: [Ahoi2008]Meet 紧急集合(lca)

题目链接 1787: [Ahoi2008]Meet 紧急集合 Time Limit: 20 Sec  Memory Limit: 162 MB Submit: 2574  Solved: 1158 [Submit][Status][Discuss] Description Input Output Sample Input 6 4 1 2

fouzhe的博客 396

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

LCA 【bzoj1787】[Ahoi2008]Meet 紧急集合

LCA 【bzoj1787】[Ahoi2008]Meet 紧急集合 题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1787 注意到边权为一,x和y之间的距离为dep[x]+dep[y]-2*dep[LCA(x,y)]。 直接枚举三中LCA的情况即可。 我莫名其妙求了9次LCA,GXZ巨佬求了四次,emmm…… code #in...

weixin_30268071的博客 104

【Ahoi2008】【lca】【bzoj1787】Meet 紧急集合

题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1787 题解: 求出三个点两两之间的lca会发现有两个是一样的,然后我们选那个不一样的就好了。 #include #include #include #include using namespace std; struct use{ int st,en; }b[5000001];

sunshinezff的专栏 680

BZOJ 1787: [Ahoi2008]Meet 紧急集合【LCA】

1787: [Ahoi2008]Meet 紧急集合 Time Limit: 20 Sec Memory Limit: 162 MB Description Input Output Sample Input 6 4 1 2 2 3 2 4 4 5 5 6 4 5 6 ...

aiweiluan5095的博客 143

BZOJ 1787 [Ahoi2008]Meet 紧急集合——LCA

1787: [Ahoi2008]Meet 紧急集合

CHN_JZ的博客 484

BZOJ 1787 AHOI 2008 Meet 紧急集合 倍增LCA

题目大意:给出一棵树,在上满找三个点,问那个点到这三个点的距离和最短。 思路:可以证明,这个店必然是这三个点之间两个的LCA,然后枚举就可以了。 CODE: #include #include #include #include #define MAX 1000010 #define INF 0x3f3f3f3f using namespace std; int

(╯°口°)╯(┴—┴ 867

BZOJ 1787 AHOI2008 紧急集合 倍增LCA

题目大意:给定一棵树,多次询问到三个点距离之和最小的点和距离 首先易知到两个点距离之和最小的点一定在两点间的路径上 于是到三个点距离之和最小的点一定在两两之间路径的交点上 然后很容易就会知道这个交点一定是其中两个点的LCA(其实是我不会证) 此外为什么不会是三个点共同的LCA呢?因为三个点共同的LCA一定是至少一对点的LCA 证明略(其实我也不会证) 然后就是倍增LCA的问题了 我的倍增

世界 1776

【BZOJ1787】[Ahoi2008]Meet 紧急集合 LCA

【BZOJ1787】[Ahoi2008]Meet 紧急集合 Description Input Output Sample Input 6 4 1 2 2 3 2 4 4 5 5 6 4 5 6 6 3 1 2 4 4 6 6 6 Sample Output 5 2 2 5 4 1 6 0 HINT ...

weixin_30731287的博客 74

BZOJ1787 [Ahoi2008]Meet 紧急集合 【LCA】

1787: [Ahoi2008]Meet 紧急集合 Time Limit:20 SecMemory Limit:162 MB Submit:3578Solved:1635 [Submit][Status][Discuss] Description Input Output Sample Input 6 4 1 2 2 3 2 4 4 5 5...

weixin_30915951的博客 78

BZOJ 1787: [Ahoi2008]Meet 紧急集合(LCA)

1787: [Ahoi2008]Meet 紧急集合 Time Limit: 20 Sec  Memory Limit: 162 MB Submit: 1693  Solved: 777 [Submit][Status][Discuss] Description Input Output Sample Input 6 4 1 2 2 3 2

蘑菇--走在通往梦想的道路上。 508

BZOJ1787 [Ahoi2008]Meet 紧急集合 LCA

欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1787 题意概括   有一棵节点为n个(n≤500000)的树。接下来m次询问(m≤500000),每次给出3个点 a,b,c ,现在让你求一个点 p ,使得 dis(p,a) + dis(p,b) + dis(p,c) 最小。   输出 p 和dis(p,a) + dis(p,...

weixin_30868855的博客 122
上一篇: [BZOJ1018]SHOI2008堵塞的交通|线段树
下一篇: [BZOJ1143]CTSC2008祭祀|最长反链|floyd|二分图匹配
Tag_king
博客等级 码龄12年 15粉丝 164原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值