精华内容
下载资源
问答
  • ACM算法模版集合

    2009-10-15 23:18:39
    动态规划记忆化搜索在思考方式上的区别 最长子序列系列问题 最长不下降子序列 最长公共子序列 一类NP问题的动态规划解法 树型动态规划 背包问题 动态规划的优化 四边形不等式 函数的凸凹性 状态...
  • 并不对劲spoj1812

    2018-01-19 14:38:00
    spoj1811的区别在于这道题不方便后缀数组做。当然,如果不嫌很多个串用奇怪的字符连起来麻烦、判断时常数极大的话,也可以试试。 字符串总数不多,好像还真行。 #include<iostream> #inc...

    题意是求多个串的lcs。

    这也是道后缀自动机的模板题。对于任意一个字符串建后缀自动机,用其他串查询就行。对于后缀自动机的每个状态要额外记匹配到当前状态的最大长度。

    和spoj1811的区别在于这道题不方便后缀数组做。当然,如果不嫌很多个串用奇怪的字符连起来麻烦、判断时常数极大的话,也可以试试。 字符串总数不多,好像还真行。

    #include<iostream>
    #include<iomanip>
    #include<cstdio>
    #include<cstring>
    #include<cstdlib>
    #include<cmath>
    #include<algorithm>
    #define maxn 100010
    using namespace std;
    int ans,len,p;
    int read(){
        int f=1,x=0;char ch=getchar();
        while(isdigit(ch)==0 && ch!='-')ch=getchar();
        if(ch=='-')f=-1,ch=getchar();
        while(isdigit(ch))x=x*10+ch-'0',ch=getchar();
        return x*f;
    }
    void write(int x){
        int ff=0;char ch[15];
        while(x)ch[++ff]=(x%10)+'0',x/=10;
        if(ff==0)putchar('0'); 
        while(ff)putchar(ch[ff--]);
        putchar(' ');
    }
    typedef struct node{
        int to[30],dis,fa;
    }spot;
    struct SAM{
        spot x[maxn*2];
        int ls,ls2,q,cnt,rt,lst,c[maxn*2],ord[maxn*2],ans[maxn*2],maxl[maxn*2];
        char s[maxn];
        void start(){
            lst=rt=++cnt;
            scanf("%s",s+1);
            ls=strlen(s+1);
            for(int i=1;i<=ls;i++)
                extend(i);
            for(int i=1;i<=cnt;i++)
                ans[i]=x[i].dis;
        }
        void extend(int pos){
            int val=s[pos]-'a',p=lst,np=++cnt;
            lst=np,x[np].dis=pos;
            for(;p&&x[p].to[val]==0;p=x[p].fa)x[p].to[val]=np;
            if(p==0)x[np].fa=rt;
            else{
                int q=x[p].to[val];
                if(x[q].dis==x[p].dis+1)x[np].fa=q;
                else{
                    int nq=++cnt;
                    x[nq].dis=x[p].dis+1;
                    memcpy(x[nq].to,x[q].to,sizeof(x[q].to));
                    x[nq].fa=x[q].fa,x[np].fa=x[q].fa=nq;
                    for(;x[p].to[val]==q;p=x[p].fa)x[p].to[val]=nq;
                }
            }
        }
        void qsort(){
            for(int i=1;i<=cnt;i++)
                c[x[i].dis]++; 
            for(int i=1;i<=ls;i++)
                c[i]+=c[i-1];
            for(int i=1;i<=cnt;i++)
                ord[c[x[i].dis]--]=i; 
        }
        int work(){
            while(scanf("%s",s+1)!=EOF){
                len=0;
                memset(maxl,0,sizeof(maxl));
                ls2=strlen(s+1);
                for(int i=1;i<=ls2;i++){
                    int val=s[i]-'a';
                    if(x[p].to[val])len++,p=x[p].to[val];
                    else{
                        for(;p&&x[p].to[val]==0;p=x[p].fa);
                        if(p==0)p=rt,len=0;
                        else len=x[p].dis+1,p=x[p].to[val];
                    }
                    maxl[p]=max(maxl[p],len);
                }
                for(int i=cnt;i>=1;i--){
                    int u=ord[i];
                    ans[u]=min(ans[u],maxl[u]);
                    if(x[u].fa && maxl[u])maxl[x[u].fa]=x[x[u].fa].dis;
                } 
            }
            int res=0;
            for(int i=1;i<=cnt;i++){
                res=max(res,ans[i]);
            }
            return res;
        }
    }t;
    int main(){
        t.start();
        t.qsort();
        int res=t.work();
        write(res);
        return 0;
    }
    并不对劲的lcs

     

    转载于:https://www.cnblogs.com/xzyf/p/8275970.html

    展开全文
  • 尽我所知,除了文中特别加以标注致谢地方外,论文中不包含其他人已经发表或撰写过研究成果,也不包含为获得东南大学或其它教育机构学位或证书而使用过材料。与我一同工作同志对本研究所做任何贡献均已...
  • ● 以极大的灵活性实际使用通用c++——不要求读者使用特定计算机、操作系统或编译器; ● 以ISO/ANSI标准为基础,对模板、标准模板库、字符串类、异常、RTTI名称空间进行了讨论。 译者介绍:Stephen Prata在...
  • ● 以极大的灵活性实际使用通用c++——不要求读者使用特定计算机、操作系统或编译器; ● 以ISO/ANSI标准为基础,对模板、标准模板库、字符串类、异常、RTTI名称空间进行了讨论。 译者介绍:Stephen Prata在...
  • ● 以极大的灵活性实际使用通用c++——不要求读者使用特定计算机、操作系统或编译器; ● 以ISO/ANSI标准为基础,对模板、标准模板库、字符串类、异常、RTTI名称空间进行了讨论。 译者介绍:Stephen Prata在...
  • ● 以极大的灵活性实际使用通用c++——不要求读者使用特定计算机、操作系统或编译器; ● 以ISO/ANSI标准为基础,对模板、标准模板库、字符串类、异常、RTTI名称空间进行了讨论。 译者介绍:Stephen Prata在...
  • 方法来进行板卡设计,使你能够享受极大的自由,从而能够使你在设计 不同阶段随意转换,按你正常设计流量进行工作。 Protel DXP 拥有:分级线路图设计、Spice 3f5 混合电路模拟、完全支持线路 图基础上FPGA...
  • C#微软培训教材(高清PDF)

    千次下载 热门讨论 2009-07-30 08:51:17
    18.2 在 C #代码中调用 C++ VB 编写组件 .240 18.3 版 本 控 制 .249 18.4 代 码 优 化 .252 18.5 小 结 .254 第五部分 附 录 .255 附录 A 关 键 字.255 附录 B 错 误 码.256 附录 C .Net 名字空间...
  • C#微软培训资料

    2014-01-22 14:10:17
    18.2 在 C #代码中调用 C++ VB 编写组件 .240 18.3 版 本 控 制 .249 18.4 代 码 优 化 .252 18.5 小 结 .254 第五部分 附 录 .255 附录 A 关 键 字.255 附录 B 错 误 码.256 附录 C .Net 名字空间...
  • 间接同义词直接同义词的区别如下: 假设: AB是同义词,AC是同义词,BD是同义词,CE是同义词 则: 对于A来说,A B C是直接同义词 对于B来说,A B D是直接同义词 对于C来说,A C E是直接同义词 对于A B C来...
  • DBX260中文说明书

    2013-04-24 11:07:35
    这是从DriveRackTM 260功放电平匹配的统一增益。注意,如果选择的扬声器包括超低音扬声器系统,那么需要询问驱动超低音扬声器是用桥接功放还是单声道功放。关于功放增益调整的更详细资料请参阅附录中的系统设置...
  • sql2005全文检索.doc

    2009-09-09 10:31:46
    ”,同样,很难想象一个拥有极大信息量行业网站门户没有站内全文搜索将会出现怎样局面,网站全文检索对于挖掘网站信息整合网站资源价值是不言而喻。我们看到,通用型搜索引擎已经成为了互联网世界门户...
  • 3、 直流变频空调与交流变频空调的区别 交流变频空调的是将工频市电220V转换为310V直流电源,并把它送到功率模块(晶体管开关等组合);同时模块受微电脑送来的控制信号控制,输出频率可变的电源(合成波形近似正弦...
  • 千里马酒店前台管理系统V7使用手册

    热门讨论 2011-06-16 14:09:38
    特别地,千里马V7.2独创命令行快捷操作穿透操作查询技术为你工作带来极大的方便。在状态栏输入域(快捷键F8切换),您可以输入房号、姓名、帐号来打开一张客单,并按在住、预订、离店优先次序来智能判断...
  • 图层“不透明度”“填充”选项的区别 画笔设置 知识拓展 锁定选项 双重画笔画虚线 WORKS 16 美容三剑客——缺陷与瑕疵修补工具 案例注释 污点修复画笔工具 修复画笔工具 修补工具 知识拓展 去掉图上的文字 “修复...
  • 新版Android开发教程.rar

    千次下载 热门讨论 2010-12-14 15:49:11
    将移动终端评价标准从硬件向软件转变,极大的激发了软件开发者热情。 � Android 源代码遵循 Apache V2 软件许可,而不是通常 GPL v2 许可。有利于商业开发。 � 具有强大 Linux 社区支持。 Android ...
  • IIS6.0 IIS,互联网信息服务

    热门讨论 2010-08-23 21:20:55
    最初是Windows NT版本可选包,随后内置在Windows 2000、Windows XP ProfessionalWindows Server 2003一起发行,但在普遍使用Windows XP Home版本上并没有IIS。 添加运行准备  一、IIS添加 请进入“控制...
  • 接口类问题(B类)-指设计、编码中出现的函数环境、其他函数、全局/局部变量或数据变量之间的数据/控制传输不匹配的问题,在系统中起重要作用,将导致模块间配合失效等严重问题; 维护类问题(C类)-指设计、...
  • 12.4 与应用特点相匹配的解决方案 348 12.4.1 压缩索引 348 12.4.2 基于函数的索引 350 12.4.3 反转键索引 353 12.4.4 降序索引 354 12.5 管理问题的解决方案 355 12.5.1 不可见索引 355 12.5.2 虚拟索引 ...
  • 12.4 与应用特点相匹配的解决方案 348 12.4.1 压缩索引 348 12.4.2 基于函数的索引 350 12.4.3 反转键索引 353 12.4.4 降序索引 354 12.5 管理问题的解决方案 355 12.5.1 不可见索引 355 12.5.2 虚拟索引 ...
  • c语言编写单片机技巧

    2009-04-19 12:15:17
    嵌入式DSP专门用来处理对离散时间信号进行处理计算,提高编译效率执行速度。在数字滤波、FFT(Fast Fourier Transform)、频谱分析、图像处理分析等领域,DSP正在大量进入嵌入式市场。 18. MCU在...
  • Oracle专家高级编程--详细书签版

    热门讨论 2012-08-21 11:57:09
    在进入Oracle公司之前,Kyte是一名系统集成人员,主要为美国军方政府部门客户构建规模、异构数据库。 Thomas Kyte就是主持Oracle Magazine Ask Tom专栏Oracle公司同名在线论坛那个Tom,他通过这一方式热心...
  • 文件上传场景经常碰到,如果我们上传文件是一个很大的文件,那么上传时间应该会比较久,再加上网络不稳定各种因素影响,很容易导致传输中断,用户除了重新上传文件外没有其他办法,但是我们可以使用分片上...

空空如也

空空如也

1 2
收藏数 31
精华内容 12
关键字:

极大匹配和最大匹配的区别