POJ 3461 - Oulipo(KMP)

主成分分析(PCA)和局部线性嵌入(LEE)原理详解 从KNN谈“维度灾难”,介绍线性降维PCA和局部线性嵌入LLE 这两种降维方法的原理 阅读详情

Oulipo
Time Limit: 1000MS Memory Limit: 65536K
Total Submissions: 18241 Accepted: 7323

Description

The French author Georges Perec (1936–1982) once wrote a book, La disparition, without the letter 'e'. He was a member of the Oulipo group. A quote from the book:

Tout avait Pair normal, mais tout s’affirmait faux. Tout avait Fair normal, d’abord, puis surgissait l’inhumain, l’affolant. Il aurait voulu savoir où s’articulait l’association qui l’unissait au roman : stir son tapis, assaillant à tout instant son imagination, l’intuition d’un tabou, la vision d’un mal obscur, d’un quoi vacant, d’un non-dit : la vision, l’avision d’un oubli commandant tout, où s’abolissait la raison : tout avait l’air normal mais…

Perec would probably have scored high (or rather, low) in the following contest. People are asked to write a perhaps even meaningful text on some subject with as few occurrences of a given “word” as possible. Our task is to provide the jury with a program that counts these occurrences, in order to obtain a ranking of the competitors. These competitors often write very long texts with nonsense meaning; a sequence of 500,000 consecutive'T's is not unusual. And they never use spaces.

So we want to quickly find out how often a word, i.e., a given string, occurs in a text. More formally: given the alphabet {'A', 'B', 'C', …, 'Z'} and two finite strings over that alphabet, a word W and a text T, count the number of occurrences of W in T. All the consecutive characters of W must exactly match consecutive characters of T. Occurrences may overlap.

Input

The first line of the input file contains a single number: the number of test cases to follow. Each test case has the following format:

  • One line with the word W, a string over {'A', 'B', 'C', …, 'Z'}, with 1 ≤ |W| ≤ 10,000 (here |W| denotes the length of the string W).
  • One line with the text T, a string over {'A', 'B', 'C', …, 'Z'}, with |W| ≤ |T| ≤ 1,000,000.

Output

For every test case in the input file, the output should contain a single number, on a single line: the number of occurrences of the word W in the text T.

Sample Input

3
BAPC
BAPC
AZA
AZAZAZA
VERDI
AVERDXIVYERDIAN

Sample Output

1
3
0


=========================


#include <iostream>
#include <cstdio>
#include <cstring>

using namespace std;
const int MAXN=1000100;
char w[MAXN],t[MAXN];
int T,ans,f[MAXN];

void getFail(char P[],int f[])
{
    int i=0,j=-1;
    int len=strlen(P);
    f[0]=-1;
    while (i<len){
        if (j==-1||P[i]==P[j])
        {
            i++,j++;
            f[i]=j;
        }
        else j=f[j];
    }
}

void KMP(char T[],char P[],int f[]){
    int i=0,j=0;
    int n=strlen(T);
    int m=strlen(P);
    getFail(P,f);
    while(i<n)
    {
        if(j==-1||T[i]==P[j])
        {
            i++,j++;
        }
        else j=f[j];
        if(j==m)
        {
            ans++;
            j=f[j];
        }
    }
}

int main()
{
    scanf("%d",&T);
    while(T--)
    {
        ans=0;
        scanf("%s%s",w,t);
        KMP(t,w,f);
        printf("%d\n",ans);
    }
    return 0;
}


【算法】基于STM32的MPU6050卡尔曼滤波算法(入门级) 1. 简介 卡尔曼滤波(Kalman filtering)是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。由于观测数据中包括系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程。详情见:卡尔曼滤波简介 MPU6050的解算主要有三种姿态融合算法:四元数法 、一阶互补算法和卡尔曼滤波算法。我们常用的DMP库使用的是四元数法,本文采用卡尔曼滤波算法,使用RT-Thread国产操作系统,利用env工具进行串口、模拟IIC环境配置,使用10ms的线程进行卡尔曼滤波解算。 2. 阅读详情

相关推荐

esxi8.0.3如何添加USB外置硬盘

本文介绍了在ESXi系统中配置外置USB硬盘作为数据存储的完整步骤:1)通过SSH禁用USB仲裁服务并关闭自启;2)识别已连接的USB硬盘设备路径;3)使用partedUtil创建GPT分区表并计算扇区范围;4)设置VMFS6分区并格式化。关键命令包括停止usbarbitrator服务、partedUtil分区操作以及vmkfstools格式化命令。整个过程需通过SSH执行,最终将USB硬盘配置为名为"USB_Datastore"的VMFS6存储设备。

qq_41683719的博客 1546

C++——KMP算法例题——Oulipo(POJ3461)

Oulipo Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 38073   Accepted: 15327 Description The French author Georges Perec (1936–1982) once wrote a book, La

McDonnell_Douglas的博客 854

【Nature Communications】超高介电常数材料 Hf0.5Zr0.5O2(HZO)

复旦大学AnQuanJiang团队在《NatureCommunications》发表研究,通过原子层沉积技术制备Hf0.5Zr0.5O2(HZO)薄膜电容器,结合等离子体处理获得突破性性能:介电常数达921,储能密度584J/cm³,效率近100%。研究揭示了铁电性消失后氧空位有序排列产生超高介电常数的机制,并通过同步辐射衍射和STEM分析证实了微观结构转变。该材料在85-300K温度范围内保持稳定,经1万亿次循环后仍能维持100μC/cm²电荷密度,为高密度DRAM和CMOS器件集成提供了新方案。

荷塘阅色 2457

【KMP】POJ 3461 Oulipo

 POJ 3461 OulipoOulipo题目链接-&gt;http://poj.org/problem?id=3461Time Limit: 1000MS Memory Limit: 65536KTotal Submissions: 45665 Accepted: 18233DescriptionThe French author Georges Perec (1936–1982) once ...

荷叶田田 493

用LTspice仿真CMOS反相器功耗?这份避坑指南能省你3天调试时间

本文详细介绍了如何使用LTspice准确仿真CMOS反相器的功耗,包括动态功耗、短路功耗和静态功耗的测量技巧。通过工程实践指南,帮助电子工程师避开常见陷阱,优化仿真参数设置,提升仿真结果的可靠性,节省调试时间。

w7x8y9z的博客 189

通义千问对接FreeSWITCH实现大模型呼叫中心

通义千问是由阿里云开发的大规模语言模型,具备优秀的自然语言处理能力,支持文本生成、问答对话、摘要提取等多种任务。它不仅拥有丰富的知识储备,还能根据上下文灵活调整回答策略,适用于各种复杂场景下的自动化交流。FreeSWITCH是一个开源的多媒体通信服务器,提供了包括VoIP通话、即时消息传递在内的多种通信服务。它的模块化设计允许开发者根据实际需求定制功能,广泛应用于企业级通信系统中。通过集成通义千问,FreeSWITCH能够实现更智能的客户服务体验。

技术永不眠 Q:53195017 1498

POJ 3461 Oulipo(KMP:统计一个串出现的次数)

POJ 3461 Oulipo(KMP:计算一个串出现的次数) http://poj.org/problem?id=3461 题意:就是给你一个T串和P串,问你P串在T串中出现了多少次. 分析:直接套用KMP模板即可. AC代码: #include #include #include #include #include using namespace std; char T[10000

code 1313

【OpenCV】手眼标定实战:从原理到calibrateHandEye的完整实现

本文详细解析了机器人视觉中的手眼标定原理与实战,重点介绍了如何使用OpenCV的calibrateHandEye函数实现从数据采集到结果验证的完整流程。文章深入剖析了AX=XB核心方程,区分了眼在手上与眼在手外两种配置,并提供了详细的代码示例与避坑指南,帮助开发者精准建立相机与机械臂末端的坐标转换关系,是机器人精准抓取的关键技术。

weixin_29046611的博客 509

POJ3461 Oulipo KMP裸题

POJ3461 Oulipo 很裸的KMP题目,求模式串在母串中的匹配次数。 不过我最开始用的cin T了 /(ㄒoㄒ)/~~ mdzz代码#include <iostream> #include <cstring> #include <cstdio> using namespace std;char s[1000005],a[10005]; int t; int next[10005];voi

Forjames的栏目 521

【电机应用控制】——步进电机控制原理(四相五线/两相四线/细分驱动)&驱动器&梯形/S形加减速算法&直线/圆弧插补

步进电机是一种把电脉冲信号转换为角位移(左)或线位移(右)的电动机。两相通常1.8°,三相通常1.2°、无相通常0.72°,角位移=脉冲个数X步距角。在非超载且不超频的情况下,电机的旋转位置只取决于脉冲个数,转速只取决脉冲信号的频率。所以只需要统计脉冲个数和频率,不再需要编码器测速和位置,具有优秀的开环能力,当然也可接编码器反馈速度和位置数据,实现更加精准的闭环控制。永磁式动态性能好,输出力矩大,但步距角大通常7.5°;反应式(磁阻式)结构简单成本低,步距角小一般1.2°,但振动噪音大动态性能差;

weixin_51658186的博客 5万+

SAP SEGW 事物码里的 Function Import

开放数据协议(OData)包括标准的 CRUD (创建、检索、更新和删除)操作,这些操作映射到 HTTP 方法的 POST、GET、PUT/MERGE 和 Delete 几类。此外,OData还支持进一步的服务操作:,这些操作可以由HTTP方法GET或POST调用,用于处理不能映射到标准 CRUD 操作的任何内容。通过在数据模型中创建 ,可以在 service Builder 中实现此类额外的服务操作。例如,您可以为以下自定义操作创建函数导入:Work Item confirmation检查航班的可用性虽然

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 995

poj3461 Oulipo —— KMP

题目链接:http://poj.org/problem?id=3461 代码如下: #include<cstdio>//poj 3461 kmp #include<cstring> using namespace std; char s1[1000005], s2[10005]; int len1, len2,next[10005...

alince20008的博客 209

华为OD机试新系统真题-魔法咒语组合(Java/Py/C++/Go/C/Js)

华为OD机试 新系统真题【魔法咒语组合】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【魔法咒语组合】多语言题解

qq_45776114的博客 668

POJ3461 Oulipo

POJ3461 Oulipo 这一题是裸的kmp 总结几点: 字符串scanf读入不加& fail求的是文本串 代码: #include<iostream> #include<cstring> #include<cstdio> using namespace std; int n,ans; char w[10010],t[1000010]; int...

AlexTYJ的博客 179

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

POJ 3461 Oulipo(字符串匹配,KMP算法)

题目来源:http://poj.org/problem?id=3461 Oulipo Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 49522   Accepted: 19665 Description The Frenc...

da_kao_la的博客 453

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

poj3461 Oulipo(KMP)

题目链接: http://poj.org/problem?id=3461 题目大意: 给两个字符串p和s,问p在s中出现了几次。 思路: KMP模板题。 用KMP算法可以知道p是否在s 中出现,如果要知道出现几次,其实还是模拟匹配过程。如果匹配到一个成功的字符串,就继续看下去,同时j=next[j],相当于在第plen+1的地方字符串失配了,要重新给p定位。 代码: #incl

hahahaha 564

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

poj 3461 Oulipo(KMP)

题目链接:http://poj.org/problem?id=3461 思路分析:字符串匹配问题,使用KMP算法解决。 代码如下: #include <stdio.h> char T[1000005], W[10005]; int Next[10005]; int Len_T, Len_W; void GetNext( ) { in...

aqjh9999的博客 101

poj3461 Oulipo【KMP】

题目大意: 给一个字符串T,表示文章,再给一个字符串W,表示单词。T和W都只包含26个大写英文字母。 现在计算单词W在文章T中出现的次数。W在T中出现的次数必须连续完全匹配,没两次匹配可能 有重叠的部分。 思路: 先求出字符串W的Next[]指针,然后进行匹配,当一次匹配成功后,继续回退到Next[j]向后进行 匹配,直到字符串T的末尾。此时,得到的匹配成功次数为所求,即W在T中出现的次数。

程序员充电站(itcharge) 1209

poj 3461 Oulipo (KMP)

题目链接:  poj 3461 题目大意:  给出主串和模式串,求模式串在主串中出现的次数(部分可以重合) 解题思路:  KMP从主串的第一个字符开始匹配                    开始是匹配成功就立刻退出,再次从上次退出的下一个字符开始匹配,TLE...                    利用上next[ ]数组的含义,每次不全部退出,而是退出部分j=next[ j ]

ンZee的解题报告 1135

【POJ3461】【KMP】Oulipo

Description The French author Georges Perec (1936–1982) once wrote a book, La disparition, without the letter'e'. He was a member of the Oulipo group. A quote from the book: Tout avait Pai...

Gregory99174的博客 193

[poj3461]Oulipo_KMP

Oulipo poj-3461     题目大意:给你两个字符串s和p,问s中有多少个等于p的子串。     注释:$1\le strlen(p)\le 10^4\qquad1\le strlen(s)\le 10^6$       想法:刚刚学习KMP,先来一道裸题。什么是KMP?       KMP是一种字符串匹配算法。如果求出在一个母串中子串出现的位置,我们用一种办法就是枚...

dianan0938的博客 183

poj3461 Oulipo(KMP)

Description The French author Georges Perec (1936–1982) once wrote a book, La disparition, without the letter 'e'. He was a member of the Oulipo group. A quote from the book: Tout avait Pair nor

万豪给给的博客 680

POJ 3461 Oulipo KMP

Description The French author Georges Perec (1936–1982) once wrote a book, La disparition, without the letter ‘e’. He was a member of the Oulipo group. A quote from the book: ...

dataxiang6224的博客 183

POJ 3461 Oulipo(kmp算法解析)

题目链接:https://cn.vjudge.net/contest/320014#problem/F Sample Input 3 BAPC BAPC AZA AZAZAZA VERDI AVERDXIVYERDIAN Sample Output 1 3 0 翻译:每组数据两行字符串(原串和模拟串),求原串中有多少个模拟串? KMP算法: 对于两个串,ps:BABABABCBABABABB和...

zaiyang遇见 380

POJ -3461 Oulipo(KMP)

Oulipo Time Limit: 1000MS Memory Limit: 65536K Description The French author Georges Perec (1936–1982) once wrote a book, La disparition, without the letter ‘e’. He was a member of the Oul...

名字太长容易被发现并打死 259

【POJ】【P3461】【Oulipo】【题解】【KMP】

传送门: http://poj.org/problem?id=3461 蒟蒻近期ya

退役狗的专栏 899
上一篇: POJ 3026 - Borg Maze(最小树+BFS)
下一篇: HDU 2923 - Einbahnstrasse(floyd)
coco430
博客等级 码龄14年 9粉丝 107原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值