【洛谷4770】 [NOI2018]你的名字(SAM,线段树合并)

news/2024/10/22 16:20:41/

传送门

洛谷

Solution

做过的比较玄学的后缀自动机。
果然就像\(Tham\)所讲,后缀自动机这种东西考场考了不可能做的出来的。。。
考虑如果\(l=1,r=|S|\)的怎么做?
直接建后缀自动机然后跳。
接着就是\(l,r\)随机。。。
详细说明可点开蓝色题解按钮然后膜拜第一篇题解!
考虑线段树合并,我们关心的其实只有父亲关系和len对吧。
那么维护一下区域有多少个值,然后每一次查询符不符合要求就好了。

代码实现

代码戳这里

转载于:https://www.cnblogs.com/mle-world/p/10604896.html


http://www.ppmy.cn/news/147418.html

相关文章

hdu 4770 状态压缩模拟

直接状态压缩枚举所有状态判断是否可行&#xff0c;从所有可行方案中找最小的。 题目最大的坑点在于&#xff0c;题目说的是15个点&#xff0c;但亲测最多有16个点&#xff0c;我屮艸芔茻。。。 代码&#xff1a; #include <iostream> #include <cstring> #inclu…

hdu 4770 Lights Against Dudely

用离中心距离为1的L去覆盖最多十五个点&#xff0c;#不能被覆盖&#xff0c;可以覆盖的地方可以越界&#xff0c;有一个L可以是旋转0&#xff0c;90&#xff0c;180&#xff0c;270去覆盖的 问&#xff0c;最少要多少个L可以实现全覆盖。 枚举可旋转的L所在的位置&#xff0c…

HDU 4770 DFS状压

一个n*m的房间有的房间是可破坏的&#xff0c;其他不可破坏&#xff0c;现在给你一些L型的灯&#xff0c;其中只有一个可以旋转&#xff0c;其他不能&#xff0c;让你用最少的灯覆盖所有的可破坏区域&#xff0c;且不能覆盖不可破坏的区域。 枚举旋转的灯&#xff0c;对剩下的…

杭电4770

这道题有几个陷阱&#xff1a; 1.灯光可以找到房间以外 2.只有一个可以旋转的灯 3.最多有十五个需要灯光的房间 4.一个房间最多只能有一盏灯 3 3 #.# . . . #.# 这组数据上错了好久。。。 大致解题思路&#xff1a; 记录下来需要灯光的发房间数&#xff0c;对其进行遍历&a…

Core i7-4770K的详细性能

新品发布前总能看到一些规格、性能方面的偷跑&#xff0c;但大多都是零零碎碎的&#xff0c;关键时刻还得看权威大站。Toms Hardware今天放出猛料&#xff0c;公布了Intel Haswell处理器家族旗舰型号Core i7-4770K的详细性能&#xff0c;基本可以对下代平台有个整体的印像了。 …

P4770 [NOI2018]你的名字

蒟蒻表示不会sam凉凉了&#xff0c;所以只能提高SA技巧&#xff1f; 题意&#xff1a;有一个串\(A\)&#xff0c;每次选择一个\(A\)的子串\(A\)&#xff0c;以及串\(B\)&#xff0c;问\(B\)的所有本质不同子串中不在\(A\)中的串的数量。 &#xff08;定义\(A_i\)表示以字符\(A_…

hdu4770 状态压缩+枚举

http://acm.hdu.edu.cn/showproblem.php?pid4770 Problem Description Harry: "But Hagrid. How am I going to pay for all of this? I havent any money." Hagrid: "Well theres your money, Harry! Gringotts, the wizard bank! Aint no safer place. Not…

BZOJ4770: 图样 (随机点值求异或最小生成树边权和)

题目描述&#xff1a; n ≤ 50 , m ≤ 8 n\le50,m\le8 n≤50,m≤8 题目分析&#xff1a; 根据最小生成树有小到大加入边可以将点按照二进制最高位分组&#xff0c;统计所有情况的边权和。 Code&#xff1a; #include<bits/stdc.h> #define maxn 55 #define maxm 9 u…