HDU 1512 Monkey King 并查集+左偏树

Android车载多屏开发实战:从零搭建同显/异显Demo(附源码) 本文详细介绍了Android车载多屏开发的实战经验,从零搭建同显/异显Demo,涵盖多屏模拟、核心API调用、同显/异显架构实现及性能优化等关键环节。通过C++构建完整开发链路,帮助开发者快速掌握多屏同显和多屏异显技术,提升智能座舱系统的交互体验。附源码供参考。 阅读详情

时空隧道


代码如下:

#include<algorithm>
#include<iostream>
#include<cstring>
#include<cstdio>
//by NeighThorn
using namespace std;
const int maxn=100000+5;
int n,m,fa[maxn],root[maxn];
struct M{
    int l,r,val,dis;
}heap[maxn];
inline int find(int x){
    return x==fa[x]?x:fa[x]=find(fa[x]);
}
inline int merge(int x,int y){
    if(!x||!y)
        return x+y;
    if(heap[x].val<heap[y].val)
        swap(x,y);
    int &l=heap[x].l,&r=heap[x].r;
    r=merge(r,y);
    if(heap[l].dis<heap[r].dis)
        swap(heap[x].l,heap[x].r);
    if(r)
        heap[x].dis=heap[r].dis+1;
    else
        heap[x].dis=0;
    return x;
}
inline int pop(int x){
    int l=heap[x].l,r=heap[x].r;
    heap[x].l=heap[x].r=heap[x].dis=0;
    return merge(l,r);
}
signed main(void){
    while(scanf("%d",&n)!=EOF){
        int x,y;
        for(int i=1;i<=n;i++)
            scanf("%d",&heap[i].val),fa[i]=root[i]=i,heap[i].l=heap[i].r=heap[i].dis=0;
        scanf("%d",&m);
        while(m--){
            scanf("%d%d",&x,&y);
            int fx=find(x),fy=find(y);
            if(fx==fy)
                puts("-1");
            else{
                int a=root[fx],b=root[fy];
                heap[a].val>>=1,heap[b].val>>=1;
                int A=merge(a,pop(a));
                int B=merge(b,pop(b)); 
                fa[fx]=fy;root[fy]=merge(A,B);
                printf("%d\n",heap[root[fy]].val);
            }
        }
    }
    return 0;
}

by >_< NeighThorn

超详细 VMware Horizon 虚拟桌面VDI安装步骤 主要的目的是模拟生产环境中的共享存储。自动桌面相当于共享电脑,大家使用同一个虚拟机,对虚拟机的修改都放在用户的配置文件中,RDS桌面池相当于共享的服务器,可以多人同时连接到服务器上。1:之前已经建立好了NFS的存储,这部分配置好后,以后的虚拟机可以安装到NFS的存储中。2: 使用Composer发布系统可以解决SID,机器名冲突的问题,更重要的可以节约磁盘空间,发布的所有系统可以访问一块磁盘。26: 域选择我们之前建立的域,用户名我输入的是管理员,可以在AD域新建用户点击查找,我这里用的是管理员。 阅读详情

相关推荐

SAP MM 物料描述MAKTX 40个字符不够用的问题处理

SAP物料描述表,长度40个字符一般情况下,40个字符在描述中也够用了,但是要加上规格之类的额外描述就不一定了,特别是对于辅助件-刀具。解决方案一:对maktx增强,换成CHAR80或者CHAR100的,但是风险较大,涉及到好多地方,另外SAP+ 算号器 也不支持。解决方案二:增强字段。内部顾问,建议在 那就在这里加一个字段,具体过程如下:1、创建域2、创建架构3、附加架构4、GUI 设置 5、后台设置6、MASS/MM17字段新增。过程1、创建域 SE112、创建结构 se11 3、MARA附加架构

GAVIN 4725

【HDU1512】【左偏树】Monkey King 题解

Monkey KingOnce in a forest, there lived N aggressive monkeys. At the beginning, they each does things in its own way and none of them knows each other. But monkeys can’t avoid quarrelling, and it only

It's Maverick. 756

springcloud+nacos+gateway+oauth2小聚会

在微服务工程中,Nacos作为目前主流的注册中心和配置中心,Spring Cloud Gateway作为目前主流的网关,下面引入spring security+oauth2+jwt作为认证和授权中心,进行简单的聊聊。

ldcaws的专栏 2643

hdu 1512 Monkey King (左偏树 可并堆)

hdu 1512 Monkey King (左偏树 实现 可并堆) //#pragma comment(linker, "/STACK:1024000000,1024000000") #include #include #include #include #include #include #include #include #include #include #includ

冰 1072

PSCAD学习笔记(1)Project Settings(重点snapshot设置)

若不勾选,则横坐标为实际时间2-7s,故障显示在第3s发生。图片中时间坐标轴显示为0-5s,故障时刻显示为第1s,即0-1s展示系统稳态,1-5s展示系统发生故障后的暂态响应,如何通过快照文件实现?勾选该项后,使用快照文件启动仿真会将仿真起始时间强制设置为0s,反之不勾选则依据快照文件保存的时间轴继续(即坐标为实际时间)。如果已有的快照文件保存的是0s至5s的仿真内容,则仿真运行时间从5s开始,到10s结束。如果已有的快照文件保存的是0s至2s的仿真内容,则仿真运行时间从2s开始,到7s结束;

gwenh的博客 7342

Xilinx PL实现DP TX视频传输的关键配置与实战解析

本文详细解析了在Xilinx ZCU106开发板上,利用PL(可编程逻辑)实现DP TX(DisplayPort发送)视频传输的关键配置与实战流程。内容涵盖从硬件平台搭建、DP TX IP核参数(如链路速率、通道数、视频时序)的详细配置,到软件驱动初始化、中断处理及链路训练的全过程,并提供了屏幕闪烁、颜色异常等常见问题的避坑指南与调试技巧,旨在帮助开发者高效实现稳定的4K视频输出。

weixin_29165465的博客 350

HDU 1512(左偏树+并查集)

#include&lt;bits/stdc++.h&gt; using namespace std; const int maxn = 1e5+5; struct node { int l,r,fa,val,dis; }t[maxn]; int finds(int x) { return t[x].fa==-1?x:t[x].fa=finds(t[x].fa); } int m...

博学 笃志 切问 近思 225

WordPress MasterStudy LMS插件 SQL注入漏洞复现(CVE-2024-1512)

WordPress Plugin MasterStudy LMS 3.2.5 版本及之前版本存在安全漏洞,该漏洞源于对用户提供的参数转义不足,导致可以通过 /lms/stm-lms/order/items REST 路由的 user 参数进行基于联合的 SQL 注入。

0xSec 1437

hdu 1512 左偏树

题意大概是有n只猴子,m次矛盾,a和b产生矛盾时,如果他们不认识,就会找各自认识中最强壮的猴子打架,然后打架的猴子权值减半,这两拨猴子就互相认识了,成了一群猴子,每次求合成一群后的最大权值。#include<iostream> #include<cstdio> #define maxn 100001 using namespace std; int f[maxn]; int find(int x)

啊 582

YOLOv8集成EMA注意力机制YOLOv8完整教程 将EMA注意力机制集成到YOLOv8框架中

YOLOv8教程这篇文章介绍了如何将EMA(高效多尺度注意力)机制集成到YOLOv8目标检测框架中。YOLOv8 EMA注意力机制通过多尺度特征融合和高效计算,能够提升模型对关键特征的关注能力。文章详细解析了EMA的原理和结构设计,包括其核心组件和前向传播过程。此外,提供了完整的实现指南,包括环境准备、项目结构设置、EMA模块代码实现(包含分组处理、空间注意力计算和特征融合等关键步骤)。YOLOv8 YOLOv8 YOLOv8 YOLOv8 YOLOv8

FJN110的博客 925

使用MATLAB/Simulink搭建一个简化的无人机螺旋桨气动特性模型,并通过仿真验证其基本功能

螺旋桨概述特点:螺旋桨通过旋转产生推力,推动无人机前进或上升。关键参数直径(D):影响推力和功率消耗。螺距(P):定义了螺旋桨每转一圈理论上前进的距离。效率(η):衡量螺旋桨将机械能转化为推力的有效性。应用场景:航拍摄影、农业监测、物流配送等。仿真目标搭建一个简化的无人机螺旋桨气动特性模型,涵盖从电机输入到螺旋桨输出推力的过程。分析不同条件下的系统响应特性(如推力、功率消耗),并探讨优化螺旋桨设计的方法。定义螺旋桨的一些基本物理参数,如直径、螺距、推力系数、功率系数等。使用Constant。

xiaoheshang_123的博客 428

[HDU1512]Monkey King

原题链接点击打开链接 LGOJ1456点击打开链接 题目大意呢就是 一开始有n只孤独的猴子,然后他们要打m次架,每次打架都会把自己和朋友中最强的拉出来跟别人打,打完之后两人战斗力就会减半。每次打完架就会成为朋友(正所谓不打不相识....)。问每次打完架之后那俩猴子最强的朋友战斗力还有多少。朋友不打架,若朋友打架就输出-1. 注意 有多组输入数据 分析 1.每次要找自

Beginner_df016 373

【2026年阿里巴巴集团暑期实习- 4月25日-算法岗-第二题- 矩阵计数】(题目+思路+Java&C++&Python解析+在线测试)

摘要: 给定两个非负整数序列a和b,构造n×m矩阵C,其中C[i][j]=a[i]×b[j]。统计矩阵中元素≥k的数量。解法是先对数组b排序,然后对于每个a[i],若k=0则直接累加m;若a[i]=0且k>0则跳过;否则计算需要的最小b[j]值,在排序后的b中使用二分查找确定满足条件的元素数量。时间复杂度为O((n+m)log m),空间复杂度O(1)。代码实现了排序和二分查找的高效组合。

m0_73659489的博客 64

【左偏树+并查集】Monkey King HDU1512

Monkey King Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 2320    Accepted Submission(s): 975 Problem Description Once in a forest,

Jiangzh_MZOI 725

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

左偏树+并查集 hdu1512 Monkey King

传送门:点击打开链接 题意:很多只猴子,每个猴子有个强壮值,一开始每只猴子都不认识。会有m次冲突,每次冲突的两只猴子如果不认识,就会各自在认识的人中各找一个最强壮的人打架,打完后打赢的那个人的强壮值会减半,并输出减半后的值,然后猴子两边的人都会互相认识成为朋友(所谓不打不相识..),如果两只猴子冲突但是已经认识了,那么就输出-1 思路:左偏树上次翻论文无意中发现的,感觉这种数据结构好66666

qwb的博客 999

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

HDU 1512 Monkey King 左偏树 + 并查集

题目:http://acm.hdu.edu.cn/showproblem.php?pid=1512 题意:有n个猴子,一开始每个猴子只认识自己。每个猴子有一个力量值,力量值越大表示这个猴子打架越厉害。然后给出两个数字,代表两只猴子有矛盾要决斗,如果2个猴子不认识,他们就会找他们认识的猴子中力量最大的出来单挑,单挑不论输赢,单挑的2个猴子力量值减半,这2拨猴子就都认识了。现在给m组询问,如果2

弱智就要多努力 814

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

hdu1512-Monkey King- 左偏树+并查集

题意: 有n个猴子,,一开始每个猴子只认识自己,每个都有自己的力量  m个操作,每次给x y,表示x和y打架, 先判断x,y是否有同一个老大,如果是,输出-1,不打, 否则,让各自的老大(种群中力量值最大者) 打一架,后果是各自老大力量值减半,从此两个种群合并,仍旧是力量值最大的为新老大。输出新老大的力量值。 思路: 对于记录猴子的种群,就是用并查集,每次让猴子种群中力量最大的来打

缺氧 541

hdu-1512 Monkey King [并查集+左偏树]

左偏树学习:点击打开链接 题意: 有N只猴子, 每只都有一个力量值. 开始的时候互不认识, 它们之间会发生M次斗争. 每次发生a, b的斗争时,a, b都会从各自的朋友圈里拉出一个最强的, 之后两只猴子打, 打完后这两只猴子的力量值各减半. 并且打完后,两只猴子的朋友圈的所有人都互相认识(也就是不会再打).你的任务就是对于每个斗争, 若a, b是朋友, 那么输出-1, 否则输出打完后它们的朋友

a915800048的专栏 698

HDU1512 Monkey King-左偏树+并查集

Once in a forest, there lived N aggressive monkeys. At the beginning, they each does things in its own way and none of them knows each other. But monkeys can’t avoid quarrelling, and it only happens ...

T_T233333333的博客 238

hdu 1512 Monkey King (左偏树可并堆 并查集)

Monkey KingTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 6170 Accepted Submission(s): 2628Problem Description Once in a forest, there li

w4149 458

hdu1512 & zoj2334Monkey King(左偏树 + 并查集)

Monkey King Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 2543    Accepted Submission(s): 1064 Problem Description Once in a for

ophunter的专栏 1775

HDU1512--Monkey King(并查集+左偏树)

题意:一堆猴子刚开始都不认识彼此,要打完架才认识…每次他们会找自己认识的最厉害的猴子打架,打完这个猴子的厉害值减半(向下取整),询问打完后认识的猴子中的最厉害的值(若已经认识输出-1)。 思路:用并查集判断是否认识,用左偏树去维护大根堆,实现快速合并。 注意:每次删完根节点要把它子节点和距离置空,不时合并时会MLE… #include<cstdio> #include<cstri...

weixin_44756457的博客 221

HDU1512 Monkey King【并查集+左偏树】

Monkey King Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 2543    Accepted Submission(s): 1064 Problem Description Once in a for

Cambridge_blue9的博客 818

HDU 1512 Monkey King(左偏树+并查集)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1512 题 意: 有n个猴子,一开始每个猴子只认识自己。每个猴子有一个力量值,力量值越大表示这个猴子打架越厉害。如果2个猴子不认识,他们就会找他们认识的猴子中力量最大的出来单挑,单挑不论输赢,单挑的2个猴子力量值减半,这2拨猴子就都认识了,不打不相识嘛。现在给m组询问,如果2只猴子相互认识...

Seraphimon的博客 850

Hdu 1512 Monkey King(左偏树+并查集)

题目地址:http://acm.split.hdu.edu.cn/showproblem.php?pid=1512 思路: 使用左偏树快速合并两堆。 #include #include #include #include using namespace std; const int maxn=100000+50; struct Node { int val,lson,rson,d

哆啦AC梦的博客 602
上一篇: BZOJ 2111: [ZJOI2010]Perm 排列计数 DP+lucas定理
下一篇: 我也不知道是什么题...
NeighThorn
博客等级 码龄11年 20粉丝 171原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值