题目描述:

雾。

题目分析:

这个SB博主又在水题了。。。
左偏树维护一个小根堆

题目链接:

Luogu 2713

Ac 代码:

#include <cstdio>
#include <algorithm>
#include <iostream>
#include <cstring>
const int maxm=1100000;
int fa[maxm],rt[maxm],n,m;
int kill[maxm];
int find(int x)
{if(fa[x]==x) return x;return fa[x]=find(fa[x]);
}
struct Left_tree{int son[maxm][2],dis[maxm],siz[maxm],val[maxm];inline int merge(int x,int y){if(!x||!y) return x+y;if(val[x]>val[y]) std::swap(x,y);son[x][1]=merge(son[x][1],y);if(dis[son[x][0]]<dis[son[x][1]]) std::swap(son[x][0],son[x][1]);dis[x]=dis[son[x][1]]+1;siz[x]=siz[son[x][0]]+siz[son[x][1]]+1;return x;}inline int pop(int x){return merge(son[x][0],son[x][1]);}
}heap;
int main()
{scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d",&heap.val[i]);rt[i]=fa[i]=i;}scanf("%d",&m);for(int i=1,u,v;i<=m;i++){char s[10];scanf("%s",s);if(s[0]=='M'){scanf("%d%d",&u,&v);if(kill[u]||kill[v]) continue;int f1=find(u),f2=find(v);if(f1==f2) continue;fa[f2]=f1;rt[f1]=heap.merge(rt[f1],rt[f2]);}else{scanf("%d",&u);if(kill[u]) printf("0\n");else{int f1=find(u);printf("%d\n",heap.val[rt[f1]]);kill[rt[f1]]=1;rt[f1]=heap.pop(rt[f1]); }}}return 0;
}

[Luogu P2713] 罗马游戏相关推荐

  1. 【洛谷】P2713 罗马游戏

    题目地址: https://www.luogu.com.cn/problem/P2713 题目描述: 罗马皇帝很喜欢玩杀人游戏.他的军队里面有nnn个士兵,每个士兵都是一个独立的团.最近举行了一次平面 ...

  2. 洛谷P2713 罗马游戏

    题目传送门 分析: 好吧,其实没什么好分析的,左偏树裸题. Code: #include<cstdio> #include<cstring> #include<cstdl ...

  3. P2713(罗马游戏 可并堆模板)

    题目 ?...凭什么说我不是原创啊... #include<bits/stdc++.h> using namespace std; const int N=1e6+5; int val[N ...

  4. BZOJ 1455: 罗马游戏( 配对堆 + 并查集 )

    可并堆水题 --------------------------------------------------------- #include<bits/stdc++.h> using ...

  5. nkoj P3138 罗马游戏

    nkoj P3138 罗马游戏 问题描述 罗马皇帝很喜欢玩杀人游戏. 他的军队里面有n个人,每个人都是一个独立的团. 最近举行了一次比武测试,每个人都得到了一个分数. 皇帝对那些得分很低的人嗤之以鼻. ...

  6. 【bzoj1455】罗马游戏 可并堆

    [bzoj1455]罗马游戏 可并堆 2016-05-31  10:04:41 可并堆的裸题. 左偏树(小根堆为例 性质 1.满足堆的性质,每个节点权值小于左右儿子权值 2.每个节点有dis值,表示子 ...

  7. BZOJ1455罗马游戏

    左偏树裸题 (搞板子搞到绝望x //罗马游戏 #include <bits/stdc++.h> using namespace std; const int N = 1000050; in ...

  8. bzoj1455罗马游戏*

    bzoj1455罗马游戏 题意: 维护数据结构支持合并和弹出最小值.n≤1000000,m≤100000 题解: 可并堆,注意本题合并时要判断两个节点是否在同一个堆中.本弱写了左偏树和斜堆,发现斜堆比 ...

  9. 【BZOJ1455】罗马游戏(左偏树)

    [BZOJ1455]罗马游戏(左偏树) 题面 BZOJ 然而权限题. 题解 左偏树模板题. #include<iostream> #include<cstdio> #inclu ...

最新文章

  1. 推荐一个简单、轻量、功能非常强大的C#/ASP.NET定时任务执行管理器组件–FluentScheduler...
  2. 外包:卡卡软件简要思路
  3. centos7 无法启动网络(service network restart)错误解决办法
  4. [HDU1394]Minimum Inversion Number
  5. OpenCV字母识别letter recognition的实例(附完整代码)
  6. SpringMVC @RequestBody ajax传递对象数组
  7. 求0-999之间的水仙花数。
  8. 百度初级认证有用吗_知乎“打败”了百度知道吗?
  9. 腾讯云短信发送api(SendSms)--java
  10. [Unity插件]Live2D插件学习
  11. 可视化实验二:大数据可视化工具—Tableau
  12. 文本分类概述(nlp)
  13. android 9.0 开机动画,Android bootanim开机动画启动流程
  14. Hadoop:INFO mapreduce.Job: Running job
  15. [HNOI2007]紧急疏散evacuate
  16. 深入了解style标签元素
  17. C++活到老学到老 auto
  18. Python-glove学习
  19. 使用echarts实现3D地图和需要注意的点
  20. 2022年最新吉林道路运输安全员模拟真题题库及答案

热门文章

  1. STM32 关键词(1) __weak
  2. 【Windows】关于Windows 11正式版那些糟心的事儿
  3. 记录一次糟心的pyinstall安装经历
  4. 安装SQL2000时出现:安装程序配置服务器失败。参考服务器错误日志和 C:/WINDOWS/sqlstp.log 了解更多信息。
  5. 其他——调试时chrom崩溃
  6. java搭建o2o平台_java版 spring cloud+mybatis 构建 b2b2c o2o 多租户电子商务平台
  7. iwebsec靶场搭建
  8. 浅谈BI和大数据的关系
  9. 小豹子单骑追敌(天津美术197310版)扫描版
  10. 基于FPGA的图像边缘检测系统设计