어린 카시아가 생일 파티를 엽니다. 이 날을 위해 서로 다른 n가지 종류의 사탕을 샀고, k번째 종류의 사탕은 xk개 있습니다.
카시아는 초대한 손님들에게 사탕을 나누어 줍니다. 이때 각 종류마다 모든 손님이 똑같은 개수를 받아야 하고, 사탕은 쪼갤 수 없습니다. 한 손님에게 줄 수 있는 개수가 여러 가지라면 그중 가장 큰 값을 택합니다. 예를 들어 사탕이 10개이고 손님이 4명이면 한 사람에게 0개, 1개, 2개를 줄 수 있으므로 최댓값인 2개씩 나누어 줍니다. 따라서 손님이 m명일 때 각 손님은 k번째 종류 사탕을 ⌊xk/m⌋개씩 받고, 카시아에게는 xkmodm개가 남습니다.
카시아는 아직 어떤 사탕도 맛보지 못했기 때문에, 손님들에게 나누어 준 뒤에도 모든 종류의 사탕이 적어도 한 개씩은 자기 몫으로 남기를 바랍니다. 즉, 모든 k에 대해 xk를 m으로 나눈 나머지가 1 이상이어야 합니다. 카시아는 그다지 사교적이지 않으므로, 이 조건을 만족시키기 위해 초대해야 하는 손님 수 m의 최솟값을 구해 주세요.
첫째 줄에 사탕의 종류 수를 나타내는 정수 n이 주어집니다 (1≤n≤106).
둘째 줄에는 k번째 종류 사탕의 개수를 나타내는 정수 xk n개가 공백으로 구분되어 주어집니다 (1≤xk≤105).
카시아가 초대해야 하는 손님 수의 최솟값을 정수 하나로 한 줄에 출력합니다.