#include<stdio.h>
#include<time.h>
#define max 1005
int a[max];
int istop(int*s,int n)
{
int ok=1;
for(int i=1;i<n;i++)
{
if(s[0]!=s[i])ok=0;//只要有一個糖果數不等就爲0
if(!ok)break;
}
/*for(int i=0;i<n;i++)
printf("%d ",s[i]);
printf("\n");*/
if(ok)return 1;
else return 0;
}
int main()
{
int n;//學生人數
int whistle;
while(scanf("%d",&n)==1&&n)
{
int tem[n+10];//需要一箇中間數組來保存a數組的值!
for(int i=0;i<n;i++)
{//輸入每個學生的糖果數
scanf("%d",a+i);
tem[i]=a[i];
}
whistle=0;
while(!istop(a,n))
{
whistle++;//代表口哨響了
//開始分糖果
//tem[0]=a[0];//改變a[0]的值之前先把它的值存起來
tem[0]+=(a[n-1]-a[0])/2;
for(int i=1;i<n;i++)
{
tem[i]+=(a[i-1]-a[i])/2;
}
//分完一次後檢查誰的糖果是奇數個
for(int j=0;j<n;j++)
{
if(tem[j]%2!=0)
tem[j]=a[j]=tem[j]+1;//注意,要同時改變tem數組和a數組的值!!!
else
a[j]=tem[j];
}
}
//退出循環說明糖果數相等了
printf("%d %d\n",whistle,a[0]);
/* for(int i=0;i<n;i++)
printf("%d ",a[i]);
*/
}
return 0;
}
//下面是Java版的代碼
import java.util.Scanner;
public class Main{
//儲存糖果的數組
private static int[]a=new int[1005];
private static int[]tem;//儲存糖果數目的另一個數組
private static int n;//參加遊戲的同學的人數
public static boolean istop(int[]a,int n)
{
int ok=1;
for(int i=1;i<n;i++)
{
if(a[0]!=a[i])ok=0;
if(ok==0)break;
}
if(ok==1)return true;
else return false;
}
public static void main(String[]args){
Scanner cin=new Scanner(System.in);
int whistle=0;
while(cin.hasNext()){
whistle=0;//注意,每循環一次都要把whistle置零
n=cin.nextInt();
if(n==0)break;
// const int N=n;
tem=new int[n+10];
//tem[0]+=(a[n-1]-a[0])/2;
for(int i=0;i<n;i++)
{tem[i]=a[i]=cin.nextInt();}
while(!istop(a,n))//n必須定義爲類的靜態屬性成員才能在靜態方法中使用
{
whistle++;
tem[0]+=(a[n-1]-a[0])/2;
for(int i=1;i<n;i++)
{
tem[i]+=(a[i-1]-a[i])/2;
}
for(int j=0;j<n;j++)
{
if(tem[j]%2!=0)
a[j]=tem[j]=tem[j]+1;
else
a[j]=tem[j];
}
}
System.out.println(whistle+" "+a[0]);