环状序列(Circular Sequence, ACM/ICPC Seoul 2004, UVa1584)
2017-02-14 10:30
295 查看
长度为n的环状串有n种表示法,分别为从某个位置开始顺时针得到。 例如,图3-4的环状串有10种表示:
CGAGTCAGCT,GAGTCAGCTC,AGTCAGCTCG等。 在这些表示法中,字典序最小的称为"最小表示"。
输入一个长度为n(n≤100)的环状DNA串(只包含A、 C、 G、 T这4种字符)的一种表示法,你的任务是输出该环状串的最小表示。 例如,CTCC的最小表示是CCCT,CGAGTCAGCT的最小表示为AGCTCGAGTC。
CGAGTCAGCT,GAGTCAGCTC,AGTCAGCTCG等。 在这些表示法中,字典序最小的称为"最小表示"。
输入一个长度为n(n≤100)的环状DNA串(只包含A、 C、 G、 T这4种字符)的一种表示法,你的任务是输出该环状串的最小表示。 例如,CTCC的最小表示是CCCT,CGAGTCAGCT的最小表示为AGCTCGAGTC。
#include <stdio.h> #include <string.h> #define MAX_NUM 250 int main(void) { char data[MAX_NUM]; char buff[MAX_NUM]; int len = 0 , i ; freopen("input.txt" , "r" , stdin); freopen("output.txt" , "w" , stdout); memset(data , 0 , sizeof(data)); memset( buff , 0 , sizeof(buff)); scanf("%s" , data); strcpy( buff , data); len = strlen(data); for( i = 0 ; i < len ; i++) { data[len+i] = data[i]; if( strcmp( data+i , buff) < 0 ) { strcpy(buff , data+i); buff[len] = '\0'; } } printf("%s\n" , buff); return 0 ; }
相关文章推荐
- Unty4.7 导入 NGUI3.8.2报错解决
- 我对vue框架的理解
- 快速排序-Quicksort
- HUST 1377 - Sequence
- java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost:3306/
- 蓝牙服务(服务UUID)
- iOS的UI方法大全
- 将mui对象转化为dom对象
- easyUI-Tree显示选中节点的所有父节点
- 【bzoj1727】[Usaco2006 Open]The Milk Queue 挤奶队列 贪心
- Uva 11039 Building designing
- Vue.js模拟微信朋友圈开发demo
- Vue.js学习之vue-router vuex axios webpack
- CSS3 media queries
- AndroidStudio导入项目一直Building解决方案
- 02-UILabel比例颜色填充之歌词效果实现
- [HDU 2767]Proving Equivalences(强连通分量)
- PHP中include()与require()的区别说明
- Vue2+Echarts实现多种图表数据可视化Dashboard详解(附源码)
- UIPickerView