
cpp
#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;
}

cpp
#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++;
}
}