ZOJ 1729 Hidden Password (字符串最小表示)
2024-08-30 04:47:58
以前听过,不知道是什么,其实就是字符串首尾相连成一个环,n种切法求一个字典序最小的表示。
朴素算法大家都懂。O(n)的算法代码非常简单,最主要的思想是失配的时候尽可能大的移动指针。
另外附上一个不错的字符串算法总结:http://duanple.blog.163.com/blog/static/709717672009825004092/
#include<bits/stdc++.h>
using namespace std; const int maxn = 1e5+;
char s[maxn]; int main()
{
//freopen("in.txt","r",stdin);
int T; scanf("%d",&T);
while(T--){
int n; scanf("%d",&n);
scanf("%s",s);
int i = ,j = , k = ;
while(i<n && j<n && k<n){
int x = (i+k)%n, y = (j+k)%n;
if(s[x] != s[y]){
if(s[x] > s[y]) i += k+;//如果不移动到这里,另外一边一定存在一个更小的前缀
else j += k+;
k = ;
}else k++;
if(i == j) j++;
}
printf("%d\n",i);
}
return ;
}
最新文章
- Entity Framework 6 Recipes 2nd Edition(13-6)译 ->; 自动编译的LINQ查询
- Castle.ActiveRecord多数据库配置
- 单元测试地二蛋 先弄个两个原生模块1个原始的一个jq插件
- 二、JavaScript语言--事件处理--DOM事件探秘
- MongoDB.WebIDE:升级版的Mongodb管理工具
- windows命令行及批处理文件小结
- 网页抓取:PHP实现网页爬虫方式小结
- Cursor--游标
- Android 在广播接收器中弹出对话框
- [Design Pattern] Proxy Pattern 简单案例
- FZU 2122 又见LKity(KMP+返回所有匹配位置)
- js禁止浏览器的回退事件
- python 基础一
- GOF 23种设计模式
- SSM-Spring-11:Spring中使用代理工厂Bean实现aop的四种增强
- jquery 上滑加载更多
- 求N!的位数
- 相对和绝对路径 mkdir cd rm 等命令
- gulp 添加版本号 解决浏览器缓存问题
- js各种小知识
热门文章
- Centos 6.5 下Nginx安装部署https服务器
- EF外键保存数据
- 记一次前端面试~终于拿到理想中的offer!
- Git 分支管理 Feature分支 强行删除分支
- window.onerror 捕捉所有的前端error
- ue4 动画相关方法杂记
- 2015 Noip提高组 Day2
- 洛谷2105 k皇后
- (三)siege的使用
- $(";body";).animate({";scrollTop";:top})无效的问题