PAT甲题题解-1125. Chain the Ropes (25)-贪心水题

贪心水题,每次取最短的两个绳子合并,长度缩减成一半

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <string.h>
#include <string>
#include <map>
using namespace std;
const int maxn=10000+5;
int a[maxn];
int main()
{
    int n;
    scanf("%d",&n);
    for(int i=0;i<n;i++)
        cin>>a[i];
    sort(a,a+n);
    float lastlen=a[0];
    for(int i=1;i<n;i++){
        lastlen=(lastlen+a[i])/2;
    }
    printf("%d\n",(int)lastlen);
    return 0;
}
View Code

 

posted @ 2017-03-05 19:45  辰曦~文若  阅读(241)  评论(0编辑  收藏  举报