摘要: 算法介绍 折半搜素通常用来处理数据规模不能直接通过暴力解决,但数据规模又没有特别大的情况。 例如:[P10484 送礼物](P10484 送礼物 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)) 题意:作为惩罚,GY 被遣送去帮助某神牛给女生送礼物 (GY:貌似是个好差事)但是在 阅读全文
posted @ 2024-08-26 23:00 xcuzc 阅读(95) 评论(0) 推荐(0)
摘要: 算法介绍 \(bfs+\)双端队列是一种单源最短路算法,适用于边权为 \(0\) 或 \(1\) 的图中。时间复杂度为 \(O(n)\) 。 算法原理分析 算法的整体框架与普通 \(bfs\) 求最短路类似,只是根据边权做了分类讨论,如果边权为 \(1\),则将邻居节点压到队列尾部,反之,压到队列首 阅读全文
posted @ 2024-08-26 22:35 xcuzc 阅读(45) 评论(0) 推荐(0)
摘要: 算法介绍 我们知道哈希是一种判断多重集是否相等的算法,即将多重集映射为一个数,以数的相等代多重集的相等,这个数称作哈希值。但是多重集是不考虑顺序的,因此,为了确保正确性,需要在映射的过程中引入随机性。即对每个多重集中的元素随机赋一个权值。代码实现上,通常可以取 m = 2^64,使用 unsigne 阅读全文
posted @ 2024-08-26 17:11 xcuzc 阅读(220) 评论(0) 推荐(0)
摘要: A. Turtle and Good Strings 思路:题意大致为把一个字符串分成若干段,要求每两段,前一段的首字符不能等于后的一段的尾字符,给你一个字符串,能不能构造出合法方案。观察到,分的段数越小,越有助于我们判断。所以,不妨分成两段,问题转化为判断首尾字符是否相等。 代码: #includ 阅读全文
posted @ 2024-08-26 14:34 xcuzc 阅读(261) 评论(3) 推荐(0)