#include <iostream>
using namespace std;
char S[2007], T[2007];
int N, leftIdx, rightIdx, leftFlag;
void input()
{
scanf("%d", &N);
for (int i = 1; i <= N; i++)
{
scanf("\n%c", &S[i]);
}
leftIdx = 1, rightIdx = N, leftFlag = true;
}
void solve(int i)
{
for (int j = 0; (leftIdx + j) < (rightIdx - j); j++)
{
if (S[leftIdx + j] < S[rightIdx - j])
{
break;
}
else if (S[leftIdx + j] > S[rightIdx - j])
{
leftFlag = false;
break;
}
}
if (leftFlag)
{
T[i] = S[leftIdx++];
}
else
{
T[i] = S[rightIdx--];
}
}
void dpDp()
{
for (int i = 1; i <= N; i++)
{
leftFlag = true;
solve(i);
}
}
void putAns()
{
for (int i = 1; i <= N; i++)
{
printf("%c", T[i]);
if (i % 80 == 0)
{
printf("\n");
}
}
printf("\n");
}
int main()
{
input();
dpDp();
putAns();
return 0;
}
POJ 3617 Best Cow Line 最小字典序问题
最新推荐文章于 2024-07-24 22:13:06 发布