国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

POJ - 1862 貪心

2019-11-10 23:25:55
字體:
來源:轉載
供稿:網友

一道水題,貪心 給你n個數字,每兩個數字以2sqrt(a*b)的方式合并成一個數,最后n個數字全部合并成一個數字,問最小的結果。

思路:四個數字abcd,按abcd 的順序合并,最后的結果等于2sqrt(d*2sqrt(c*2sqrt(b*a))),可以看出,最先合并的數字被開根號的次數最多,所以越大的數字應該越靠里面,也就是越大的數字越先合并。 所以先排序,從大到小一個個合并

#include<cmath>#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;const int MAXN = 105;double a[MAXN];int n;int main(){ while(scanf("%d", &n) == 1) { for(int i=0; i<n; i++) scanf("%lf", a+i); sort(a, a+n); double ans = a[n-1]; for(int i=n-2; i>=0; --i) ans = 2 * sqrt(ans*a[i]);
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 侯马市| 巴青县| 乃东县| 崇左市| 岳池县| 潮州市| 许昌市| 新密市| 扶绥县| 邢台县| 徐闻县| 东乌珠穆沁旗| 商河县| 上林县| 虎林市| 万载县| 上杭县| 丹东市| 昌都县| 当阳市| 轮台县| 富蕴县| 津市市| 全南县| 称多县| 伊金霍洛旗| 托克托县| 德格县| 精河县| 深州市| 凤台县| 岳西县| 班玛县| 莫力| 淮安市| 怀远县| 额敏县| 琼中| 湟中县| 葫芦岛市| 兴海县|