자연수 스트리머
시간 제한3초메모리 제한1024 MB
이진 문자열이 주어질 때, 어떤 l부터 시작해 연속된 이진수를 이어 붙인 부분 문자열의 최대 길이를 구합니다.
문제
0과 1로만 이루어진 길이 의 이진 문자열 가 주어진다. 어떤 자연수 의 0으로 시작하지 않는 이진수 표현을 라고 하자. 이 문제에서 자연수는 을 포함하며, 예외적으로 0이다.
문자열 의 점수란, 어떤 두 자연수 에 대해 가 , , , 을 이어붙여 쓴 문자열과 일치할 때, 그러한 쌍 중 의 최댓값이다. 그러한 이 존재하지 않으면 의 점수는 점이다.
의 부분 문자열(substring) 중 점수가 가장 높은 것의 점수를 구하라. 문자열의 부분 문자열이란, 그 문자열의 앞과 뒤에서 몇 글자씩 지워서 만들 수 있는 문자열이다(아무것도 지우지 않아도 된다).
입력
첫째 줄에 테스트 케이스의 개수 이 주어진다.
각 테스트 케이스마다, 첫째 줄에 이진 문자열의 길이 이 주어진다. 그다음 줄에 0과 1로만 구성된 길이 의 문자열 가 주어진다.
모든 테스트 케이스에서 의 합은 을 넘지 않는다.
출력
각 테스트 케이스마다 답을 한 줄에 하나씩, 총 개의 줄에 걸쳐 출력한다.