Solution -「HNOI 2016」最小公倍数(lacks of code)
Description
Link.
给出一个带权无向图,边权为 \(2^{a}\cdot3^{b}\) 形式。
给出 \(q\) 组形如 \(u,v,a,b\) 的询问,问 \(u,v\) 中是否存在一条路径使得其边权之 \(\text{lcm}\) 为 \(2^{a}\cdot3^{b}\)。
Solution
考虑 \(\text{lcm}\) 的本质,对 \(n\) 个数 \(\prod_{i=1}^{k_{1}}p_{1,i}^{c_{1,i}},\prod_{i=1}^{k_{2}}p_{2,i}^{c_{2,i}},\dots,\prod_{i=1}^{k_{n}}p_{n,i}^{c_{n,i}}\) 取 \(\text{lcm}\) 就是 \(\prod_{i=1}^{\max\{k\}}p_{i}^{\max\{c\}}\)(在一个数中存在的 \(p\) 且在另一个中不存在的置为 \(1\)),对于这题即 \(2^{\max\{a\}}\cdot 3^{\max\{b\}}\),让两个 \(\max\) 分别等于题目给出的 \(a,b\)。
现在转化一下题意,在 \(u,v\) 中选出一条可非简单路径使得 \(\max\{a\},\max\{b\}\) 分别等于给出的 \(a,b\)。
有一个 naive 的想法是缩点后 LCT 维护结果发现不太行。(好像是我不行)
既然想到了用 LCT 维护连通性那么同样可以想到用 DSU 来维护,把所有满足条件的边放入一个 DSU 然后看 \(u,v\) 是否能被这些边联通。
有两个关键字欸,我们离线询问排序吧。
把所有边按照 \(a\) 排序,把询问按 \(b\) 排序。
然后对边的标号分块,这样块内边 \(a\) 有序。
然后把每个询问放在满足前面块的 \(a\) 都小于等于这个询问的 \(a\) 的块里,并且把块内询问 \(b\) 排序,然后就可以做了。
代码狼 BH 今天又口胡题解没代码了。
Oops, something went wrong.
Solution -「HNOI 2016」最小公倍数(lacks of code)的更多相关文章
- 「HNOI 2016」 序列
\(Description\) 给你一个序列,每次询问一个区间,求其所有子区间的最小值之和 \(Solution\) 这里要用莫队算法 首先令\(val\)数组为原序列 我们考虑怎么由一个区间\([l ...
- Solution -「ZJOI 2016」「洛谷 P3352」线段树
\(\mathcal{Descrtiption}\) 给定 \(\{a_n\}\),现进行 \(m\) 次操作,每次操作随机一个区间 \([l,r]\),令其中元素全部变为区间最大值.对于每个 \ ...
- Solution -「CERC 2016」「洛谷 P3684」机棚障碍
\(\mathcal{Description}\) Link. 给一个 \(n\times n\) 的网格图,每个点是空格或障碍.\(q\) 次询问,每次给定两个坐标 \((r_1,c_1), ...
- Solution -「HNOI 2009」「洛谷 P4727」图的同构计数
\(\mathcal{Description}\) Link. 求含 \(n\) 个点的无标号简单无向图的个数,答案模 \(997\). \(\mathcal{Solution}\) 首先 ...
- Solution -「NOI 2016」「洛谷 P1587」循环之美
\(\mathcal{Description}\) Link. 给定 \(n,m,k\),求 \(x\in [1,n]\cap\mathbb N,y\in [1,m]\cap \mathbb ...
- Solution -「SDOI 2016」「洛谷 P4076」墙上的句子
\(\mathcal{Description}\) Link. (概括得说不清话了还是去看原题吧 qwq. \(\mathcal{Solution}\) 首先剔除回文串--它们一定对答案产 ...
- Solution -「HNOI 2019」「洛谷 P5293」白兔之舞
\(\mathcal{Description}\) Link. 不想概括题意.jpg \(\mathcal{Solution}\) 定义点集 \(S_c=\{(u,v)|v=c\}\):第 ...
- Solution -「APIO 2016」「洛谷 P3643」划艇
\(\mathcal{Description}\) Link & 双倍经验. 给定 \(n\) 个区间 \([a_i,b_i)\)(注意原题是闭区间,这里只为方便后文描述),求 \(\ ...
- Solution -「HNOI 2007」「洛谷 P3185」分裂游戏
\(\mathcal{Description}\) Link. 给定 \(n\) 堆石子,数量为 \(\{a_n\}\),双人博弈,每轮操作选定 \(i<j\le k\),使 \(a_i ...
- Solution -「ARC 104E」Random LIS
\(\mathcal{Description}\) Link. 给定整数序列 \(\{a_n\}\),对于整数序列 \(\{b_n\}\),\(b_i\) 在 \([1,a_i]\) 中等概率 ...
随机推荐
- Python socket记录
目录 网络编程 1.基本概念 Python中的网络编程 网络编程 1.基本概念 1.什么是客户端/服务器架构? 服务器就是一系列硬件或软件,为一个或多个客户端(服务的用户)提供所需的"服务& ...
- C++面试八股文:了解sizeof操作符吗?
某日二师兄参加XXX科技公司的C++工程师开发岗位第10面: 面试官:了解sizeof操作符吗? 二师兄:略微了解(不就是求大小的嘛..) 面试官:请讲以下如何使用sizeof? 二师兄:sizeof ...
- Devexpress如何获取RadioGroup选中项的值和显示值
分享一个小技巧,如题目所示,DEV控件如何获取RadioGroup选中项的值和显示值.也是在网上找了很久,看了大家都是通过SelectIndex的值定位选中的按钮,并没有说取选中项的值,所以自己研究了 ...
- 1. Spring相关概念
1. 初始 Spring 1.1 Spring 家族 官网:https://spring.io,从官网我们可以大概了解到: Spring 能做什么:用以开发 web.微服务以及分布式系统等, ...
- Shodan使用指南
Shodan是用于搜索连接到互联网的设备的工具.与搜索引擎可以帮助你找到网站不同,Shodan可以帮助你找到有关台式机,服务器,IoT设备等的信息.此信息包括元数据,例如在每个设备上运行的软件. Sh ...
- Kafka中的消费者Offset
消费者位移 每个 consumer 实例都会为它消费的分区维护属于自己的位置信息来记录当前消费了多少条消息.这在 Kafka 中有一个特有的术语:位移(offset). 相比较将offset保存在服务 ...
- SSIS向MySQL目标(Destination)写数据--Step By Step
前言(废话) 最近的工作中涉及到SQLSERVER向MySQL的数据迁移同步,团队中理所当然准备用开发C#微服务接口的方式实现,我觉得这个路子曲折了,推荐SSIS的方式并自告奋勇接下了这个活.不过以前 ...
- “easyExcel”导入的代码实现
使用easyExcel在导入数据事有很好的使用性,方便操作. 添加依赖: <dependency> <groupId>com.alibaba</groupId> & ...
- Java实现数组去重复的18种写法
说明 数组(含List)去重复在日常工作中经常遇到,很多时候用到Set数据结构,但有时候我们需要针对数据进行干预,这时候就需要用其他的实现方式了.以下列出各种的去重方式,基本含括了所有情况. 源码下载 ...
- Java stream流使用
1.使用filter()过滤List //查找身高在1.8米及以上的学生 List<StudentInfo> boys = studentList.stream().filter(s-&g ...