笔记
小齐没烦恼
数据科学与大数据技术专业
展开
-
并查集
并查集解决问题:(1)将两个集合合并(2)询问两个元素是否在一个集合中基本原理:每个集合用一棵树来表示,树根的编号就是整个集合的编号,每个节点存储它的父节点,p[x]表示x的父节点难点:(1)如何判断树根:if(p[x]==x)(2)如何求x的集合编号:while(p[x]!=x)x=p[x];(3)如何合并两个集合:p[x]是x的集合编号,p[y]是y的集合编号,p[x]=y优化 路径压缩(祖宗秒变爹,儿子和父亲成兄弟)例题:合并集合一共有 nn 个数,编号是 1∼n1∼n原创 2021-05-26 14:54:56 · 116 阅读 · 0 评论 -
不容易系列(3)之LELE的RPG难题
人称“AC女之杀手”的超级偶像LELE最近忽然玩起了深沉,这可急坏了众多“Cole”(LELE的粉丝,即"可乐"),经过多方打探,某资深Cole终于知道了原因,原来,LELE最近研究起了著名的RPG难题:有排成一行的n个方格,用红(Red)、粉(Pink)、绿(Green)三色涂每个格子,每格涂一色,要求任何相邻的方格不能同色,且首尾两格也不同色.求全部的满足要求的涂法.以上就是著名的RPG难题.如果你是Cole,我想你一定会想尽办法帮助LELE解决这个问题的;如果不是,看在众多漂亮的痛不欲生的Col原创 2020-12-19 09:22:40 · 400 阅读 · 1 评论 -
人见人爱A-B
参加过上个月月赛的同学一定还记得其中的一个最简单的题目,就是{A}+{B},那个题目求的是两个集合的并集,今天我们这个A-B求的是两个集合的差,就是做集合的减法运算。(当然,大家都知道集合的定义,就是同一个集合中不会有两个相同的元素,这里还是提醒大家一下)呵呵,很简单吧?Input每组输入数据占1行,每行数据的开始是2个整数n(0<=n<=100)和m(0<=m<=100),分别表示集合A和集合B的元素个数,然后紧跟着n+m个元素,前面n个元素属于集合A,其余的属于集合B. 每原创 2020-12-04 09:37:18 · 258 阅读 · 0 评论