숨겨진 비밀번호
시간 제한2초메모리 제한128 MB
문자열의 모든 좌측 순환 이동 중 사전순으로 가장 작은 것의 시작 위치를 찾고, 동일하면 가장 작은 인덱스를 출력합니다.
문제
프로그래머들은 때때로 이상한 방법으로 비밀번호를 숨긴다. Billy "Hacker" Geits가 자신의 비밀번호를 숨기는 방법을 보자. Billy는 길이가 인 소문자 라틴 문자열 를 고른다. 그런 다음 이 문자열을 한 글자씩 왼쪽으로 순환 이동시킨 개의 문자열을 모두 만들고, ( 자신을 포함한) 이 문자열들 중 사전순으로 가장 앞선 것의 접두사를 비밀번호로 삼는다.
예를 들어 문자열 alabala를 생각해 보자. (원래 문자열을 포함한) 한 글자 왼쪽 순환 이동 결과는 다음과 같다.
alabala
labalaa
abalaal
balaala
alaalab
laalaba
aalabal
이들 중 사전순으로 가장 앞선 것은 aalabal이다. 이 문자열의 첫 글자는 원래 문자열에서 위치 에 있다. (위치는 부터 센다.)
문자열 가 주어질 때, 이 문자열의 사전순으로 가장 앞선 한 글자 왼쪽 순환 이동의 시작 위치를 찾는 프로그램을 작성하시오. 가장 앞선 순환 이동이 여러 번 나타나면 가장 작은 시작 위치를 출력한다.
입력
입력의 첫째 줄에는 테스트 케이스의 개수 가 주어진다. 다음 개의 줄에는 각각 하나의 테스트 케이스가 주어진다. 먼저 문자열의 길이 ()이 주어지고, 공백 하나로 구분되어 문자열 가 주어진다.
출력
정확히 개의 줄을 출력하며, 각 줄에는 해당 테스트 케이스에 대해 찾은 시작 위치를 하나의 수로 출력한다.