题目链接:POJ-1862
再说一遍:STL大法好,贪心算法
优先队列(大根堆)
#include<iostream>
#include<queue>
#include<math.h>
using namespace std;int main()
{priority_queue<float> pqueue;int n;cin>>n;float temp;for(int i=0;i<n;i++){cin>>temp;pqueue.push(temp);}float x;float y;float z;while(pqueue.size()>1){x = pqueue.top();pqueue.pop();y = pqueue.top();pqueue.pop();z = 2 * sqrt( x * y );pqueue.push(z);}//精确到小数点后三位 cout.precision(3); cout.setf(ios::fixed);cout<<pqueue.top();}