[挑战程序设计竞赛] POJ 1862 - Stripies
来源:互联网 发布:期货软件 编辑:程序博客网 时间:2024/06/06 02:49
题意:
有N堆菌落,每堆菌落都有自己的重量,现给定两堆菌落合并后的重量为2*sqrt(m1*m2),求全部合并后最小的重量。
由合并公式可以看出,最开始合并的一定是两个最大的菌落,又可以根据2*sqrt(m1*m2)结果一定大于 min(m1, m2)。
所以就不需要用优先队列来维护最大的权值了,直接从小到大排序后倒着挨个合并即可。。
#include <stdio.h>#include <string.h>#include <math.h>#include <stdlib.h>#include <algorithm>#include <iostream>#include <set>#include <map>#include <queue>#include <stack>#include <assert.h>#include <time.h>//#define _Testtypedef long long LL;const int INF = 500000001;const double EPS = 1e-9;const double PI = acos(-1.0);using namespace std;int main(){ #ifdef _Test freopen("test.in", "r", stdin); freopen("test.out", "w", stdout); srand(time(NULL)); #endif int N, a[1000]; while(~scanf("%d", &N)) { for(int i = 0; i < N; i++) { scanf("%d", &a[i]); } sort(a, a+N); double k = a[N-1]; for(int i = N - 2; i >= 0; i--) { k = 2*sqrt(k*a[i]); } printf("%.3f\n", k); } return 0;}
0 0
- [挑战程序设计竞赛] POJ 1862 - Stripies
- 挑战程序设计竞赛---POJ.2686
- 挑战程序设计竞赛---POJ.3233
- [挑战程序设计竞赛] POJ 3253 - Fence Repair
- [挑战程序设计竞赛] POJ 3009 - Curling 2.0
- [挑战程序设计竞赛] POJ 3699 - Meteor Shower
- [挑战程序设计竞赛] POJ 2718 - Smallest Difference
- [挑战程序设计竞赛] POJ 3050 - Hopscotch
- [挑战程序设计竞赛] POJ 2376 - Cleaning Shifts
- [挑战程序设计竞赛] POJ 1328 - Radar Installation
- [挑战程序设计竞赛] POJ 3040 - Allowance
- POJ 1990 MooFest 题解 《挑战程序设计竞赛》
- 挑战程序设计竞赛 poj 2431 优先队列
- POJ 2079 Triangle 题解 《挑战程序设计竞赛》
- POJ 1852 Ants 《挑战程序设计竞赛》1.6
- 《挑战程序设计竞赛》 读后感
- 挑战程序设计竞赛:三角形
- 《挑战程序设计竞赛》 读后感
- 【EBS】打中文patch6678700报错小记
- jfreechart总结
- 【高性能架构】LVS+Keepalived实现高可用集群
- hadoop2.2.0的分布式centos上的安装(包括linux的相关配置和hadoop安装)
- Balanced Binary Tree
- [挑战程序设计竞赛] POJ 1862 - Stripies
- MVC htmlHelper<TModel> 中如何获取model
- LeetCode(78) Word Search
- 从零学习css3(一)
- jQuery noConflict() 方法
- redhat升级mysql出现服务启动找不到sock的问题
- mac升级python3.4
- 关于YUV
- ARC指南1 - strong和weak指针