相关文章
2408 c++ 小游戏
编译环境 : arm-linux-gcc
#include <sys/mman.h>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#inclu…
建站知识
2024/11/14 7:14:53
洛谷P2408 不同子串个数
链接
点击跳转
题解 a n s ∑ u ∈ s a m ( l e n u − l e n f ( u ) ) ans \sum_{u \in sam} ( len_u - len_{f(u)} ) ansu∈sam∑(lenu−lenf(u))
名不虚传,后缀自动机果然是快,完爆后缀数组
代码
#include <bits/stdc.h>
#includ…
建站知识
2024/11/15 6:05:27
P2408 不同子串个数(SA-LCP||SAM)
P2408 不同子串个数(SA-LCP||SAM)
传送门
经典的 S A − L C P SA-LCP SA−LCP题目。
显然所有子串数目为 n ( n 1 ) 2 \dfrac{n(n1)}{2} 2n(n1)。
因此我们只需知道重复的子串有多少个。
根据 L C P LCP LCP我们知道利用 L C P LCP LCP求出的 h e i g h t [ i ] L C …
建站知识
2024/10/4 12:22:17
【ybt金牌导航2-3-2】【luogu P2408】不同子串数(三种做法)
不同子串数
题目链接:ybt金牌导航2-3-2 / luogu P2408
题目大意
给你一个字符串,问你它有多少个不同的子串。
思路
当然这种字符串题都有很多做法,我们这里主要是将 SAM 的用途,所以用的是 SAM。
那用 SAM 要怎么求呢&#…
建站知识
2024/11/12 3:15:25
【洛谷 P2408】 不同子串个数(后缀自动机)
题目链接 裸体就是身体。 建出\(SAM\),\(DAG\)上跑\(DP\),\(f[u]1\sum_{(u,v)\in DAG}f[v]\) 答案为\(f[1]-1\)(因为根节点没有字符) #include <cstdio>
#include <cstring>
#include <algorithm>
using namesp…
建站知识
2024/11/12 3:15:22
SSL_2408 比萨
题意
给出t种调料,还有n种规则,规则里的配料不能一起放,例如给出规则(1,2,3),说明(1,2,3)不能一起放,但是(1&…
建站知识
2024/10/9 22:16:14
P2408(不同子串个数 SAM模板)
题目 两种方式都可以求出一个字符串不同子串的个数。 1.fail树中每一类串的个数为:d[i].len-d[d[i].fa].len; 每类不相交 2.在SAM上dfs sz[u]sigma(sz[v])1;
#include<bits/stdc.h>
#define m(a,b) memset(a,b,sizeof a)
using namespace std;
typedef long…
建站知识
2024/11/12 3:15:21
luogu 2408 不同子串个数 (后缀数组)
题目背景
因为NOI被虐傻了,蒟蒻的YJQ准备来学习一下字符串,于是它碰到了这样一道题:
题目描述
给你一个长为N的字符串,求不同的子串的个数
我们定义两个子串不同,当且仅当有这两个子串长度不一样 或者长度一样且有…
建站知识
2024/9/24 20:08:11