例题 POJ 1200 Crazy Search

解题思路: 将N个字符串分别转换成数字 然后按照 NC进制转换为 10进制

然后开一个标记数组进行标记(判定唯一性) 这样大大缩短了 时间
1600万-- 26个小写字母组合 再怎么 也不会太多
但是 不知道 到底是怎么推出的公式来的 进制转换为10进制(很神奇~~)

AC代码如下:

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
#include<string.h>
#include<set>
using namespace std;
const int maxn=16000006;
char a[maxn];
bool hash[maxn];
int num[205];
int main()
{int n,m;while(~scanf("%d%d",&n,&m)){memset(num,0,sizeof(num));memset(hash,0,sizeof(hash));scanf("%s",a);int len=strlen(a);int cnt=0;for(int i=0;i<len;i++)if(!num[a[i]])num[a[i]]=cnt++;int ans=0;for(int i=0;i<=len-n;i++){int sum=0;for(int j=i;j<=i+n-1;j++)sum=sum*m+num[a[j]];if(!hash[sum]){ans++;hash[sum]=1;}}cout<<ans<<endl;}return 0;
}

例题 POJ 1961 Period

解题思路: 就是kmp里的求next数组 然后依次扫一遍看是否出现循环节

AC代码如下:

#include<iostream>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
const int maxn=1000000+10;
int next[maxn];
string str;
int main()
{int n;int ans=0;while(cin>>n&&n){ans++;cin>>str;next[0]=next[1]=0;for(int i=1;i<n;i++){int j=next[i];while(j&&str[i]!=str[j])j=next[j];next[i+1]=(str[i]==str[j])?j+1:0;}cout<<"Test case #"<<ans<<endl;for(int i=2;i<=n;i++){int len=i-next[i];if(next[i]>0&&!(i%len))cout<<i<<" "<<i/len<<endl;}cout<<endl;}return 0;
}

转载于:https://www.cnblogs.com/maxv/p/11478233.html

本周题解(9.12)相关推荐

  1. 本周半价(12.16-12.22)电子书

    <Python数据分析(第2版)> [美]阿曼多·凡丹戈(Armando Fandango) 著 Python作为一种程序设计语言,凭借其简洁.易读及可扩展性日渐成为程序设计领域备受推崇的 ...

  2. 本周半价(12.16-12.22)电子书 1

    <Python数据分析(第2版)> [美]阿曼多·凡丹戈(Armando Fandango) 著 Python作为一种程序设计语言,凭借其简洁.易读及可扩展性日渐成为程序设计领域备受推崇的 ...

  3. 高等数学下-赵立军-北京大学出版社-题解-练习12.4

  4. 高等数学下-赵立军-北京大学出版社-题解-练习12.3

  5. 高等数学下-赵立军-北京大学出版社-题解-练习12.2

  6. 高等数学下-赵立军-北京大学出版社-题解-练习12.1

  7. python3 题解(12)字母金字塔

    字母金字塔 [问题]在控制台上打印输出一个字母组成的金字塔. 比如7层的塔如下: 这问题应该有很多可行的解法. 下面的解法强调的是:小函数风格. 把每个函数做得足够小,功能足够单一.这样出现的错误好发 ...

  8. iPhone 12快来了!苹果或本周公布发布会时间

    9月7日消息,据国外媒体报道,分析师和研究机构普遍预计,尚未推出5G智能手机的苹果,在今年将推出4款支持5G网络连接iPhone 12,但不凑巧的是,由于研发测试及供应链受到了影响,苹果方面已经确定, ...

  9. 第十三届蓝桥杯模拟赛(第二期)试题与题解 C++

    第十三届蓝桥杯模拟赛(第二期)试题与题解 1.试题A [问题描述] ​ 小蓝的IP地址为 192.168. * .21,其中 * 是一个数字,请问这个数字最大可能是多少 ? 题解 IP地址由四个字节组 ...

最新文章

  1. 如何用python的i2c教程_使用Raspberry pi3(Python)的I2C用法
  2. Spark Streaming之:Flume监控目录下文件内容变化,然后Spark Streaming实时监听Flume,然后从其上拉取数据,并计算出结果
  3. DAY12 生成器初始与列表生成式
  4. [转载] 必须要会回答的Java面试题(字符串篇)
  5. wincc服务器客户端用虚拟机,什么情况下用wincc服务器与客户端
  6. python装饰器举例_Python学习笔记:装饰器(Decorator)
  7. 帮你整理了1000套实习报告模板,快快收藏
  8. emqx配置ssl/tsl实现双向认证
  9. 万里汇WorldFirst人民币提现,1天内到账,太快了!
  10. php 九宫格验证码,PHP+Ajax微信手机端九宫格抽奖实例
  11. python 抓取网页数据
  12. YUV2RGB Opencv
  13. 改名叫Benson...
  14. 微信尝试刷掌支付;苹果 WWDC 将于 6 月 6 日开幕;Qt Creator 10 发布|极客头条
  15. Android开发未来的出路何在,android学习路线图
  16. 启航——我的第一篇博客
  17. react之router
  18. 微信小程序、uni-app使用iconfont-tools将iconfont彩色字体图标组件化并使用
  19. java可变参数 map_Java第6期Collection、Map、迭代器、泛型、可变参数、集合工具类、集合结构、Debug...
  20. 2020腾讯阅文集团-前端笔试题

热门文章

  1. mysql 表字段信息从一张表迁移到另一张表_Mysql之分库分表
  2. st7789 照片转数组软件_干货 | 新闻人实用软件安利
  3. usb3.0导入工具pe_BlackHat大会上,BlackBerry宣布开源逆向工具PE Tree
  4. mvc如何嵌套第三方页面_苹果屏蔽第三方Cookie,然后呢?
  5. MYSQL连接出现Auth,使用navicat连接 mysql时出现client does not support auth...upgrading Mysql Client...
  6. filter过滤后重新添加_Kibana基本使用---使用Flight Dashboard过滤数据
  7. 序列化和反序列化_PHP序列化和反序列化
  8. 实现挖掘大数据价值的三大因素
  9. seleniumpython定位网页元素方法_Python+Selenium 定位元素
  10. 系统学习NLP(二十五)--语种识别landID