⬆︎
×

[PAT-A] 1125 Chain the Ropes

Hyplus目录

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

发表评论