//UVa1584 - Circular Sequence
//题目:给你一个环状串,输出它以某一位置为起点时得到最小字典序的串。
//分析:从初位置到末位置每次更新字典序较小的起始位置
#include<stdio.h>
#include<string.h>
#define max 105
//对于序列s,i是否比ans小
int find(char* s, int x, int y){int len = strlen(s);//字典序比较:直接比较从第i个起的不相等的较小字符即为字符串较小字典序(//长度不等时较短的就较小)for(int i = 0; i < len; i++){if(s[(x+i)%len] != s[(y+i)%len])return s[(x+i)%len] < s[(y+i)%len];}return 0;//相等
}
int main(){int T;char s[max];   scanf("%d",&T);while(T--){scanf("%s",s);int ans = 0;int len = strlen(s);for(int i = 1; i < len; i++){if(find(s, i, ans)) ans = i;}//***输出,用取模的方法来实现,从尾到头相连接的环装输出for(int i = 0; i < len; i++)putchar(s[(i+ans)%len]);putchar('\n');}return 0;
}
/*
*DATE IN:
2
CGAGTCAGCT
CTCC*DATE OUT:
AGCTCGAGTC
CCCT
*/

UVa1584 - Circular Sequence相关推荐

  1. UVA1584 ​​​​​​​Circular Sequence【字符串】

    Circular Sequence UVA - 1584 题目传送门 题目大意:输入一个环形字符串,需输出其最小字典序的形式的字符串. AC代码: #include <cstdio> #i ...

  2. 算法竞赛入门经典(第二版) | 程序3-10 生成元 (UVa1584,Circular Sequence)

    题目概述: 长度为n的环状串有n种表示法, 字典序最小的称为最小表示.输入一个长度为n(n<100)的环状字符串的一种表示方法,输出最小表示 . 如:CTCC 为环状字符串的一种表示方法,它的所 ...

  3. UVA1584 UVALive3225 Circular Sequence【水题】

      Some DNA sequences exist in circular forms as in the following figure, which shows a circular sequ ...

  4. 【UVA/Codeforces】1584 Circular Sequence / 792B Counting-out Rhyme(就是一个圈儿...)

    https://vjudge.net/problem/UVA-1584 1584 Circular Sequence 输入一个字符串,可以以字符串中任意一个字母作为起始,输出字典序最小的那个字符串 两 ...

  5. Circular Sequence UVA - 1584

    原题及翻译 Some DNA sequences exist in circular forms as in the following figure, which shows a circular ...

  6. 1584 - Circular Sequence

    Circular Sequence Some DNA sequences exist in circular forms as in the following figure, which shows ...

  7. 例题3-6 环状序列(Circular Sequence)

    我的代码(vjudge AC): //Circular Sequence #include <stdio.h> #include <string.h> bool less(co ...

  8. 例题3-6 环状序列(Circular Sequence, ACM/ICPC Seoul 2004, UVa1584)

    长度为n的环状串有n种表示法,分别为从某 个位置开始顺时针得到.例如,图3-4的环状串 有10种表示: CGAGTCAGCT,GAGTCAGCTC,AGTCAGCTCG等.在这些表示法中,字典序最小的 ...

  9. 环状序列(Circular Sequence,ACM/ICPC Seoul 2004,UVa1584)

    长度为n的环状串有n种表示法,分别为某个位置开始顺时针得到.CGAGTCAGCT,GAGTCAGCTC,AGTCAGCTCG等.在这些表示法中,字典序最小的称为"最小表示".输入一 ...

最新文章

  1. ​“后进生”数学学科上演完美逆袭,成最具竞争力专业之一
  2. 字节跳动秋招超6000人,渣本双非的出路都被谁堵死了?
  3. linux shell trap捕捉信号 附信号表 SIGTERM SIGKILL
  4. spring手动配置
  5. 阿里云安装JDK1.7
  6. select count(1)什么意思_Python VS MySQL,我发现了select和print之间的“相通点”!
  7. 子集数据帧中的丢包因子级别
  8. LeetCode学习记录(4-6)
  9. linux下安装配置laravel环境,linux下的laravel安装
  10. .net5 不支持winform_.NET5.0 单文件发布打包操作深度剖析
  11. 两矩阵相乘的秩的性质_浅析数学中的行列式与矩阵
  12. 吐血分享9个软件下载网站以及那些开发者大佬的传奇人生
  13. 论文数模真的好难?那是你还不会Matlab!
  14. 网站+云服务器+价格表,网站+云服务器+价格表
  15. 数字图像处理,图像配准SIFT算法 (Lowe的代码)
  16. c++写一个函数验证哥德巴赫猜想
  17. WARNING: too many parse errors
  18. 临门一脚 | 技术水平一般的程序员如何准备面试
  19. 517电信日丨联通沃云携全新“上云引擎”,助力企业数字化转型
  20. linux设置网关和ip

热门文章

  1. 平常学习与实际应用场景
  2. 多元函数的极值、微分
  3. Python 基础——tuple与list、append与extend
  4. 联想记忆计算机网络,联想记忆网络,associative memory network,音标,读音,翻译,英文例句,英语词典...
  5. 江苏高考成绩什么时候可以查询2021,2021年江苏高考成绩什么时候公布出来,几月几号几点钟可以查询...
  6. python入门100例题-这 100 道 Python 题,拿去刷!!!
  7. python零基础好学吗-如何从零开始学习Python,零基础学python难吗
  8. python编程是啥-小学生都开始学的Python编程到底是什么?
  9. python在线编程免费课程-十大python零基础编程在线网课一对一费用多少钱
  10. mysql中Group_concat,查找列名,将字符串转换为数字比较大小等杂项记录