UVa 1584 Circular Sequence
来源:互联网 发布:FGO黑贞各礼装伤害数据 编辑:程序博客网 时间:2024/05/17 15:39
Problem Description
长度为n的环状串有n种表示法,分别为从某个位置开始顺时针得到。在这些表示法中,字典序最小的称为“最小表示”。输入一个长度为n的**环状**DNA串(只包含A、C、G、T)的一种表示法,你的任务是输出该环状串最小表示。
Sample Input
2
CGAGTCAGCT
CTCC
Sample Output
AGCTCGAGTC
CCCT
代码:
#include<stdio.h>#include<string.h>int cmp(char s[], int a, int b)//a和b下标开始的串比较{ int n, i, x; n = strlen(s); for(i = 0; i < n; i++) { //对n取余很重要,谁小x就等于谁 if(s[(a + i) % n] > s[(b + i) % n]) {x = b; break;} else if(s[(a + i) % n] < s[(b + i) % n]) {x = a; break;} else continue; } return x;//返回x给ans}int main(){ int t, n, i, flag, ans; char a[105]; scanf("%d", &t); while(t--) { scanf("%s", a); n = strlen(a); ans = 0;//从ans下标开始的串最小 for(i = 1; i < n; i++) { ans = cmp(a, i, ans);//遍历一边找到最小的串开始下标赋值给ans } for(i = 0; i < n; i++) { printf("%c",a[(ans + i) % n]);//输出最小的串 } printf("\n"); } return 0;}
0 0
- UVa 1584 Circular Sequence
- UVa 1584 - Circular Sequence
- UVA 1584 - Circular Sequence
- UVA - 1584 Circular Sequence
- UVa 1584 - Circular Sequence
- UVa-1584Circular Sequence
- 【Uva 1584】 Circular Sequence
- UVa 1584 - Circular Sequence
- UVA 1584 Circular Sequence
- Uva 1584 Circular Sequence
- Uva - 1584 - Circular Sequence
- UVa 1584 - Circular Sequence
- UVA 1584 Circular Sequence
- UVa 1584 Circular Sequence
- UVA - 1584 Circular Sequence
- UVa 1584 - Circular Sequence
- UVA-1584 - Circular Sequence
- UVa 1584 - Circular Sequence
- 电池充放电1c只得是什么
- 2017全球人工智能与机器人峰会4月30日前报名可享受5折早鸟票优惠!
- HttpClient
- String类和StringBuffer类常用操作
- php环境下,无法运行帝国备份王程序
- UVa 1584 Circular Sequence
- Android菜单滑动
- MongoDB--命令
- 百度地图搜索(二)
- HAWQ技术解析(十四) —— 高可用性
- Unity各类基础数据库的基本操作(一)
- 在Objective-C中浅谈面向对象
- 获取img对象的高度宽度像素
- 复杂的选择屏幕搜索帮助