http://acm.hdu.edu.cn/showproblem.php?pid=1034
#include<iostream>
#include<cstdio>
using namespace std;
#define MAX 10010
int number[ MAX ] ;
int main()
{
int n ;
int i ;
while(cin >>n && n )
{
for( i = 0 ; i < n ; ++i )
cin >> number[ i ];
int sum = 0 , temp;
while( true )
{
for( i = 1 ; i < n ; i++ )
if( number[ i ] != number[ i - 1 ] )
break ;
if( i >= n )
break ;
sum++ ;
int temp = number[ n - 1 ] / 2 ;
for( i = n - 1 ; i > 0 ; --i )
{
number[ i ] /= 2 ;
number[ i ] += number[ i - 1 ] / 2 ;
}
number[ 0 ] /= 2 ;
number[ 0 ] += temp ;
for( i = 0 ; i < n ; ++i )
if( number[ i ] & 1 )
number[ i ]++ ;
//cout << sum << endl ;
}
cout << sum << " " << number[ 0 ] << endl ;
}
return 0 ;
}