아나그램 2
면접 대비시간 제한3초메모리 제한1024 MB
두 정수 배열에서 서로 애너그램인 연속 부분 배열 쌍 중 가장 긴 것의 길이와 시작 위치를 구합니다.
문제
투명 인간이 심심풀이로 집들의 지붕 위를 거닐다가, 최상층의 열린 창문에서 흘러나오는 두 사람의 대화를 우연히 들었다. 대화하던 사람은 "노릭"과 "심카"였다. 투명 인간은 "이름이 이상하군"이라고 생각했지만, 이름은 그에게 중요하지 않았다. 대화 주제가 프로그래밍이었기 때문에, 그는 그런 유혹을 그냥 지나칠 수 없었다.
주의 깊게 듣고 나서, 그는 두 사람이 다루던 문제를 이해했다. 패턴 배열과 텍스트 배열이 주어졌을 때, 텍스트의 연속된 부분 배열이 패턴과 애너그램인지 판단하는 문제였다. 두 수열은 원소를 재배열해서 서로 같게 만들 수 있으면 애너그램이다. 투명 인간은 이 문제가 너무 쉽다고 보고 더 어렵게 바꿨다. 두 배열이 주어졌을 때, 첫 번째 배열에 길이 인 연속된 부분 배열이 있고 두 번째 배열에도 길이 인 연속된 부분 배열이 있으며, 두 부분 배열이 서로 애너그램인 최대의 를 구하는 것이다. 이 문제는 투명 인간의 능력을 넘어서서, 당신에게 도움을 청했다.
입력
첫째 줄에 첫 번째 배열의 길이 ()이 주어진다. 둘째 줄에 첫 번째 배열의 원소 () 개가 공백으로 구분되어 주어진다. 셋째 줄에 두 번째 배열의 길이 ()이 주어진다. 넷째 줄에 두 번째 배열의 원소 () 개가 공백으로 구분되어 주어진다.
출력
한 줄에 세 개의 음이 아닌 정수 , , 를 출력한다. 는 애너그램인 부분 배열의 최대 길이이고, 는 첫 번째 배열에서 그 구간이 시작하는 위치, 는 두 번째 배열에서 그 구간이 시작하는 위치이다. 최대 길이가 0이면 나머지 두 수는 모두 -1이어야 한다.