您的位置:首页 > 产品设计 > UI/UE

UVa 1584:Circular Sequence

2017-01-30 21:41 399 查看
字典序,水题。

#include <stdio.h>
#include <string.h>
#define MAXLEN 105
char seq[MAXLEN];

int lessThan(int p1, int p2, int len)
{
int i = 0;
while(i < len)
{
if(seq[(p1+i)%len] != seq[(p2+i)%len])
return seq[(p1+i)%len] < seq[(p2+i)%len];
++i;
}
return 0;
}

int main()
{
int T, i, len;
scanf("%d", &T);
while(T--)
{
scanf("%s", seq);
len = strlen(seq);
int ans = 0;
for(i = 1; i < len; ++i)
if(lessThan(i, ans, len)) ans = i;
for(i = 0; i < len; ++i)
putchar(seq[(ans+i)%len]);
putchar('\n');
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: