SCU 4438 Censor 字符串hash

http://fastvj.rainng.com/problem/SCU-4438

题意:一个文本串和模式串,如果文本串中出现了模式串直接删除,然后拼接成一个新串,继续删除。求最后处理过的字符串。

做法:先对模式串哈希,在对文本串逐一哈希,出现了,就立刻删除,然后继续哈希。

这倒题做法也很多,各大匹配算法都可以解决

 

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
const int mod=10007;
const int N=1000010;
ull hash1[N*5],p[N*5];
char txt[N*5],str[N*5];
char st[N*5];
int main()
{
    p[0]=1;
    for(int i=1;i<N*5;i++) p[i]=p[i-1]*131;
    while(~scanf("%s%s",str,txt))
    {
        int head,tail;
        head=tail=0;
        int len1=strlen(str);
        int len2=strlen(txt);
        ull tmp=str[0];
        for(int i=1;i<len1;i++)
            tmp=tmp*131+str[i];
        hash1[0]=0;
        int po=0;
        for(int i=0;i<len2;i++)
        {
            st[tail++]=txt[i];
            po++;
            hash1[po]=hash1[po-1]*131+txt[i];
            if(po<len1) continue;
            ull tt=hash1[po]-hash1[po-len1]*p[len1];
            if(tt==tmp)
            {
                int cnt=0;
                while(cnt<len1){
                    tail--;
                    cnt++;
                    po--;
                }
            }
        }
        for(int i=0;i<tail;i++) printf("%c",st[i]);
        printf("\n");
    }
    return 0;
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1 TMS320F2833x,TMS320F2823x DSC .................................................................................. 10 1.1 特性......................................................................................................................... 10 1.2 开始使用.................................................................................................................... 11 2 简介.................................................................................................................................. 12 2.1 引脚分配.................................................................................................................... 14 2.2 信号说明.................................................................................................................... 23 3 功能概述............................................................................................................................ 33 3.1 内存映射.................................................................................................................... 34 3.2 简要说明.................................................................................................................... 41 3.2.1 C28x CPU ....................................................................................................... 41 3.2.2 内存总线(哈弗总线架构) .................................................................................... 41 3.2.3 外设总线......................................................................................................... 41 3.2.4 实时JTAG 和分析.............................................................................................. 42 3.2.5 外部接口(XINTF) ................................................................................................ 42 3.2.6 闪存............................................................................................................... 42 3.2.7 M0,M1 SARAM ............................................................................................... 42 3.2.8 L0, L1, L2, L3, L4, L5, L6, L7SARAM ........................................................................ 43 3.2.9 引导ROM ........................................................................................................ 43 3.2.9.1 引导加载器使用的外设引脚....................................................................... 44 3.2.10 安全性............................................................................................................ 44 3.2.11 外设中断扩展(PIE) 块......................................................................................... 46 3.2.12 外部中断(XINT1-XINT7,XNMI) ............................................................................. 46 3.2.13 振荡器和锁相环(PLL) .......................................................................................... 46 3.2.14 安全装置......................................................................................................... 46 3.2.15 外设时钟......................................................................................................... 46 3.2.16 低功率模式....................................................................................................... 46 3.2.17 外设帧0,1,2,3 (PFn) ...................................................................................... 47 3.2.18 通用输入/输出(GPIO) 复用器................................................................................. 47 3.2.19 32 位CPU 定时器(0,1,2) .................................................................................. 47 3.2.20 控制外设......................................................................................................... 48 3.2.21 串行端口外设.................................................................................................... 48 3.3 寄存器映射................................................................................................................. 49 3.4 器件仿真寄存器............................................................................................................ 51 3.5 中断.......................................................................................................................... 52 3.5.1 外部中断......................................................................................................... 56 3.6 系统控制.................................................................................................................... 57 3.6.1 OSC 和PLL 块.................................................................................................. 58 3.6.1.1 外部基准振荡器时钟选项.......................................................................... 59 3.6.1.2 基于PLL 的时钟模块.............................................................................. 60 3.6.1.3 输入时钟损失....................................................................................... 61

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值