洛谷——P2342 叠积木
P2342 叠积木
第一种是移动操作,格式为“移动X到Y的上面”。X和Y代表两块积木的编号,意思是将X所的那堆积木,整体叠放到Y所在的那堆积木之上;“M”
第二种是统计操作,格式为“统计Z下方的积木数量”。Z代表一块积木的编号,意思是贝西需要报告在编号为Z的积木之下还有多少块积木;“C”
显然的带权并查集,其实是多维护了两个变量,注意查询时一定要先更新,防止查询时未被更新而出错
#include<bits/stdc++.h>#define N 300000 using namespace std;int n,fa[N],front[N],num[N]; //num表示以x为底的上面的集合中元素数量//front就是x距低端的元素数量 int find(int x){if(x==fa[x]) return x;int f=find(fa[x]);front[x]+=front[fa[x]];return fa[x]=f; }int main() {scanf("%d",&n);for(int i=1;i<N;i++) fa[i]=i,num[i]=1;for(int x,y,z,i=1;i<=n;i++){char a;cin>>a;if(a=='M'){scanf("%d%d",&x,&y);int fx=find(x),fy=find(y);fa[fx]=fy;//更新父节点front[fx]+=num[fy];//更新儿子的frontnum[fy]+=num[fx];//更新父亲的numnum[fx]=0;//将儿子的num归0}else {scanf("%d",&z);x=find(z);//一定要先查询在输出printf("%d\n",front[z]);}}return 0; }
相同题目见:https://www.cnblogs.com/song-/p/9620959.html
转载于:https://www.cnblogs.com/song-/p/9625401.html
洛谷——P2342 叠积木相关推荐
- 【洛谷 1969】积木大赛
题目描述 春春幼儿园举办了一年一度的"积木大赛".今年比赛的内容是搭建一座宽度为nn的大厦,大厦可以看成由n块宽度为1的积木组成,第i块积木的最终高度需要是h_ih i ...
- 洛谷P2342-叠积木
Problem 洛谷P2342-叠积木 Accept: 373 Submit: 1.1k Time Limit: 1000 mSec Memory Limit : 128MB Problem ...
- 01背包的应用~洛谷P1504 积木城堡
题目描述 XC 的儿子小 XC 最喜欢玩的游戏用积木垒漂亮的城堡.城堡是用一些立方体的积木垒成的,城堡的每一层是一块积木. 小 XC 是一个比他爸爸 XC 还聪明的孩子,他发现垒城堡的时候,如果下面的 ...
- 洛谷 P1504 积木城堡
洛谷 P1504 积木城堡 题目 题目描述 XC的儿子小XC最喜欢玩的游戏用积木垒漂亮的城堡.城堡是用一些立方体的积木垒成的,城堡的每一层是一块积木.小XC是一个比他爸爸XC还聪明的孩子,他发现垒城堡 ...
- 洛谷P3688/uoj#291. [ZJOI2017]树状数组
传送门(uoj) 传送门(洛谷) 这里是题解以及我的卡常数历程 话说后面那几组数据莫不是lxl出的这么毒 首先不难发现这个东西把查询前缀和变成了查询后缀和,结果就是查了\([l-1,r-1]\)的区间 ...
- 洛谷-DFS-1019-单词接龙-个人AC题解和公共AC题解笔记
学习内容: 预处理 万能头文件 string的使用 话不多说,直奔主题 本人AC代码 #include<iostream> #include<cstdio> #include& ...
- 洛谷 深基 第4部分 基础数学与数论(19-21课)
洛谷 深基 第4部分 基础数学与数论 第19章 位运算与进制转换 P1143 进制转换 https://www.luogu.com.cn/problem/P1143 洛谷P1143 进制转换的Pyt ...
- 洛谷P1244青蛙过河
洛谷P1244青蛙过河 题目描述 有一条河,左边一个石墩(A 区)上有编号为 1,2,-,n 的 n 只青蛙,河中有 k 个荷叶(C 区),还有 h 个石墩(D 区),右边有一个石墩(B 区),n 只 ...
- 洛谷--橙色百道DP总结
最近刷完了洛谷橙色DP大约一百道,算是发现了一些套路,就部分题目做一些总结. 大概分为三类 第一类,九大背包及其衍生 第二类,经典DP模型,如LCS,LIS等 第三类,实际问题背景的普通,环形,树上D ...
- 【洛谷】P2676 [USACO07DEC]Bookshelf B (c++)
题目描述 Farmer John最近为奶牛们的图书馆添置了一个巨大的书架,尽管它是如此的大,但它还是几乎瞬间就被各种各样的书塞满了.现在,只有书架的顶上还留有一点空间. 所有 N(1≤N≤20,000 ...
最新文章
- 访谈|在网络世界捕获威胁的猎人
- 从高铁事故到软件系统的可靠性
- python 多维数组删除重复
- 在 Visual Studio 中使用 Q# 进行量子编程
- 【C 语言】数组 ( 数组指针 | 数组指针定义 | 直接定义 数组指针 )
- 软件工程系列教材:软件架构设计实践教程
- CCIE学习(7)——VLAN相关命令汇总
- 我的Go语言学习之旅八:创建一个简单的WEB服务器
- 笔记本(华硕UL80VT)软件超频setFSB
- java使用Socket类接收和发送数据
- JavaScript—事件
- 判断用户是否已经登录
- 下载丨2020 PG亚洲大会(PPT汇总)
- iphone11右上角信号显示_iOS 11信号显示栏变了!这意味着啥?
- 360浏览器清除缓存_手机微信内置浏览器缓存清理指南
- 服务器 重启windows_安装Windows 计算机意外
- Gatling性能测试(一)
- 编译OpenJDK8 arm32的源码库
- 广告竞价中为什么采用二价计费
- 【屏类型结构体定义PanelType】 文档位置:《apiPNL.h》
热门文章
- 数据库基础、使用C语言构建一个数据库、SQL语言、MySQL
- php百度蜘蛛劫持,PHP模拟百度蜘蛛,伪造IP爬行网站,附源代码
- SD内存卡禁止写入只读怎么办?另类SPI模式修复坏卡
- ZigBee模块无线传输星形拓扑组网结构简介
- Andriod OpenGL 教程 10 - 3D世界
- Arcgis 创建渔网
- 初等数学复习之一元二次方程的解法
- 伸缩式工具刀行业调研报告 - 市场现状分析与发展前景预测
- 学计算机的要起一个群名,如何起一个代表青春的群名字
- CMake Error: The source directory “/“ does not appear to contain CMakeLists.txt.