
#include<bits/stdc++.h>
#include<algorithm>
using namespace std;
float a[110]={0};
int n;
float sum;
int main()
{cin>>n;for(int i=0;i<n;i++){cin>>a[i];}sum=a[0];sort(a+0,a+n);for(int i=1;i<n;i++){sum=(sum+a[i])/2;}sum=sum+0.5;cout<<(int)sum;return 0;
}

#include<iostream>
#include<algorithm>
using namespace std;
struct s
{int v;int t;
};
s que[200005]={0};void func(int);
bool c[200005]={0};
int a,b;
int n;
int main()
{cin>>a>>b>>n;func(a);return 0;
}
void func(int m)
{int head=0;int tail=0;c[n+100000]=1;que[++tail]=s{n,0};while(head<tail){s h=que[head];if(h.v==b){cout<<h.t+2;break;}int v=h.v+1;int in=v+100000;if(in>=0&&in<200005&&c[in]==0){que[++tail]=s{v,h.t+1};c[in]=1;}v=h.v-1;in=v+100000;if(in>=0&&in<200005&&c[in]==0){que[++tail]=s{v,h.t+1};c[in]=1;}v=h.v*n;in=v+100000;if(in>=0&&in<200005&&c[in]==0){que[++tail]=s{v,h.t+1};c[in]=1;}head++;}
}