소 재배치

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

농부 존은 1번부터 NN번까지 번호가 붙은 소 NN마리(1N1001 \le N \le 100)를 한 줄로 세워 두었다. 현재 ii번째 자리에 있는 소의 번호가 A(i)A(i)인 배열 AA로 순서가 주어진다. 농부 존은 사진을 찍기 위해 ii번째 자리에 있어야 할 소의 번호가 B(i)B(i)인 배열 BB로 바꾸고 싶다.

AA 순서에서 BB 순서로 맞추기 위해 소들은 여러 번의 순환 이동을 한다. 한 번의 순환 이동은 어떤 소가 BB에서 자기가 가야 할 자리로 이동하면서 그 자리에 있던 다른 소를 밀어내고, 밀려난 소도 자기 목표 자리로 이동하는 과정이 연쇄적으로 이어지다가, 처음에 움직이기 시작한 소가 처음 자리로 돌아올 때 끝난다. 소들은 모든 소가 BB에서의 올바른 자리에 도착할 때까지 순환 이동을 반복한다. AABB에서 같은 자리에 있는 소는 순환 이동에 참여하지 않고, 그 외의 소는 정확히 한 번의 순환 이동에 참여한다.

순환 이동의 개수와 가장 긴 순환 이동에 포함된 소의 수를 구하라.

입력

  • 1행: 정수 NN
  • 2행부터 N+1N+1행: A(1)A(1)부터 A(N)A(N)까지
  • N+2N+2행부터 2N+12N+1행: B(1)B(1)부터 B(N)B(N)까지

출력

  • 1행: 공백으로 구분된 두 정수. 첫째는 순환 이동의 개수, 둘째는 가장 긴 순환 이동의 길이다. 순환 이동이 없으면 둘째 수는 1-1을 출력한다.

힌트

각 자리 ii에서 소 A(i)A(i)BB에서 자기가 가야 할 자리로 이동한다. 이 이동 관계를 자리끼리 연결하면 여러 개의 순환이 생기며, 길이 1인 순환은 이미 제자리에 있는 소이다.