Java
import java.io.*;
import java.util.Arrays;
public class Main {
static final int N = 10010;
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
// 读取数组长度
int n = Integer.parseInt(br.readLine());
// 读取并解析数组
int[] seq = new int[N];
String[] inputs = br.readLine().split(" ");
for (int i = 0; i < n; i++) {
seq[i] = Integer.parseInt(inputs[i]);
}
// 排序
Arrays.sort(seq, 0, n);
// 计算结果
double sum = seq[0];
for (int i = 1; i < n; i++) {
sum = (sum + seq[i]) / 2;
}
// 输出结果
System.out.println((int) Math.floor(sum));
br.close();
}
}
C++
#include <iostream>
#include <cstring>
#include <cmath>
#include <algorithm>
using namespace std;
const int N = 10010;
int n;
int seq[N];
double sum;
int main() {
scanf("%d", &n);
for (int i = 0; i < n; ++i) scanf("%d", &seq[i]);
sort(seq, seq + n);
sum = seq[0];
for (int i = 1; i < n; ++i)
sum = (sum + seq[i]) / 2;
printf("%d\n", (int) floor(sum));
return 0;
}