P2908 [USACO08OPEN]文字的力量Word Power

第一眼:AC自动机(大雾)

直接暴力枚举即可。

用<cctype>的函数较方便(还挺快)

$isalpha(a)$:$a$是否是字母

$tolower(a)$:$a$把a转成小写

 #include<iostream>
#include<cstdio>
#include<cstring>
#include<cctype>
#define re register
using namespace std;
char a[][],b[][];
int n,m,ans,c[],lena[],lenb[];
int main(){
scanf("%d%d",&n,&m);
for(re int i=;i<=n;++i){
char c=getchar();
while(!isalpha(c)) c=getchar();
while(isalpha(c)) a[i][lena[i]++]=tolower(c),c=getchar();
}
for(re int i=;i<=m;++i){
char c=getchar();
while(!isalpha(c)) c=getchar();
while(isalpha(c)) b[i][lenb[i]++]=tolower(c),c=getchar();
}
//----读入字符串-------
for(re int i=;i<=n;++i){
memset(c,,sizeof(c)); ans=;
for(re int j=;j<lena[i];++j){
for(re int k=;k<=m;++k){
if(c[k]==-) continue;
if(b[k][c[k]]==a[i][j]) ++c[k];
if(c[k]==lenb[k]) ++ans,c[k]=-;//这个子串的字母全出现过了
}
}printf("%d\n",ans);
}return ;
}

最新文章

  1. CentOS 搭建openVPN
  2. ExtJS基础知识总结:自定义日历和ComboBox控件(二)
  3. AngularJS 拦截器
  4. asp.net MVC中获取当前URL/Controller/Action
  5. 在内部架设NuGet服务器(转载)
  6. 66. Regular Expression Matching
  7. Java初认识--函数和数组
  8. JS子元素oumouseover触发父元素onmouseout
  9. Linux 系统裁剪笔记 软盘2
  10. Linux内核编程、调试技巧小集
  11. CollapsingToolbarLayoutDemo【可折叠式标题栏,顺便带有CardView卡片式布局】
  12. js-将文本复制到剪切板
  13. [dev][python] 从python2进阶到python3你都需要了解什么
  14. 纪念一下学写pipeline时脑子里的坑
  15. Java File mkdir() mkdirs()
  16. haproxy负载均衡的安装配置
  17. Android--保持加速度传感器在屏幕关闭后运行(收集)
  18. 删除node_modules文件夹
  19. Mysql之数据表操作
  20. maven 骨架命令行创建

热门文章

  1. C++异常 调用abort()
  2. PyQt4预定义对话框
  3. c++11——基于范围的for循环
  4. Android开发 Android Studio2.0 教程从入门到精通Windows版 - 入门篇
  5. LeetCode——Sqrt(x)
  6. 【Android N 7.1.1】 处于锁屏界面时可以转屏
  7. Elasticsearch 常用基本查询
  8. Java初学者笔记二:关于类的常见知识点汇总
  9. Jmeter中ftp测试下载默认路径及文件
  10. netty的解码器与粘包和拆包