poj - 1509 Glass Beads
求字符串循环同构中字典序最小的,用最小表示法做的。
1 #include <stdio.h> 2 #include <string.h> 3 const int N = 10010; 4 char s[N]; 5 int main() 6 { 7 int n,i,j,k,t,l; 8 scanf("%d",&n); 9 while(n--) 10 { 11 scanf("%s",s); 12 l = strlen(s); 13 i = k = 0; j = 1; 14 while(i<l && j<l && k<l) 15 { 16 t = s[(i+k)%l] - s[(j+k)%l]; 17 if(!t) k++; 18 else 19 { 20 if(t > 0) i += k+1; 21 else j += k+1; 22 if(i == j) j++; 23 k = 0; 24 } 25 } 26 printf("%d\n",++i < ++j ?i :j); 27 } 28 return 0; 29 }
转载于:https://www.cnblogs.com/lzxskjo/archive/2012/08/29/2661093.html
poj - 1509 Glass Beads相关推荐
- POJ 1509 Glass Beads 后缀自动机
求给定字符串s从哪个位置开始的循环同构串字典序最小. 如果复制一遍s,发现其所有循环同构都是新字符串ss的长度为|s|的子串. 于是后缀自动机..dfs,不断地走字典序最小的边,直到走了|s|次即可. ...
- @poj - 1509@ Glass Beads
目录 @description@ @solution@ @accepted code@ @details@ @description@ 给定一个由小写字母构成的圆环形的字符串(即首字母和末字母是相连的 ...
- POJ - 1509 Glass Beads
传送门 最小表示法模板 //Achen #include<algorithm> #include<iostream> #include<cstring> #incl ...
- POJ 1509 Glass Beads
Description 求字符串的最小循环表示. Sol SAM. 把原串复制一遍,建出SAM,然后每次选最小的一个跑 \(len\) 次,这就是最小循环表示的最后一个节点,然后 \(x-len+1\ ...
- UVA719 Glass Beads 最小表示 / 后缀自动机
传送门 题意: 求sss的最小表示. ∣s∣≤1e4|s|\le 1e4∣s∣≤1e4 思路: 可以选择直接套最小表示法的板子,但也可以将sss复制,即ss=s+sss=s+sss=s+s,对ssss ...
- 【POJ1509】Glass Beads 【后缀自动机】
题意 给出一个字符串,求它的最小表示法. 分析 这个题当然可以用最小表示法做啦!但是我是为了学后缀自动机鸭! 我们把这个字符串长度乘二,然后建SAM,然后在SAM上每次跑最小的那个字母,找出长度为n的 ...
- (Incomplete) UVa 719 Glass Beads
方法:最小表示法 题意及求一个string最小表示法的启示index.套用模版即可. code: 1 #include <cstdio> 2 #include <cstring> ...
- POJ1509 Glass Beads [后缀自动机]
题意: 给一个字符串S,每次可以将它的第一个字符移到最后面,求这样能得到的字典序最小的字符串.输出开始下标 练习SAM第一题! SS构造SAM,然后从开始尽量走最小走n步就可以啦 什么?开始位置?!R ...
- Glass Beads
是一个裸的最小表示法问题 #include<iostream> using namespace std; int t,n; string str; int getmin() {int i= ...
- 《挑战程序设计竞赛(第2版)》习题册攻略
本项目来源于GitHub 链接: 项目GitHub链接 1 前言 项目为<挑战程序设计竞赛(第2版)>习题册攻略,已完结.可配合书籍或笔记,系统学习算法. 题量:约200道,代码注释内含详 ...
最新文章
- php网页连mysql_php - 如何在单个网页上连接多个MySQL数据库?
- LintCode 795. 4种独特的路径(DFS)
- 没有run窗口_使用 Terminator 在一个窗口中运行多个终端 | Linux 中国
- 转:Deep learning系列(十五)有监督和无监督训练
- linux r后台执行,screen 命令简单用法 Linux后台执行 就用它
- PTA 2-1 列出连通集【DFS+BFS基础】
- vue生命周期及其应用场景
- 四则运算 python
- 基础矩阵,本质矩阵,单应性矩阵讲解,在ORB-SLAM相机的位姿初始化的应用
- Docker 快速安装教程
- (原創) 將所有的include都寫在.h中,可避免重複include (C/C++) (C)
- 用word模仿手写字体
- nssa和stub_STUB与NSSA区域总结
- postgres 导入纯文本数据txt
- 七牛云 CDN 调用
- 2023年有哪些值得推荐的蓝牙耳机?小米|南卡|JBL等等高性价比蓝牙耳机推荐
- 大数据量(例如几十万或者几百万的量)怎么导入到excel中
- 宝塔Linux面板命令大全(详细完整版)
- Supervisor 安装与配置
- 测试大咖漫谈测试人职业发展