首页 > 代码库 > 哈夫曼树/贪心/POJ 3253 Fence Repair
哈夫曼树/贪心/POJ 3253 Fence Repair
1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 #include<iostream> 5 using namespace std; 6 int n; 7 int a[20010]; 8 bool cmp(int x,int y) 9 {10 return x>y;11 }12 int main()13 {14 int n;15 scanf("%d",&n);16 for (int i=1;i<=n;i++) scanf("%d",&a[i]);17 long long ans=0;18 while (n>=2)19 {20 int min1=1,min2=2;21 if (a[min1]>a[min2]) swap(min1,min2);22 for (int i=3;i<=n;i++)23 {24 if (a[i]<a[min1])25 {26 min2=min1;27 min1=i;28 }29 else if (a[i]<a[min2]) min2=i;30 }31 int t=a[min1]+a[min2];32 ans+=t;33 if (min1==n) swap(min1,min2);34 a[min1]=t;35 a[min2]=a[n];36 n--;37 }38 printf("%lld\n",ans);39 return 0;40 }
哈夫曼树/贪心/POJ 3253 Fence Repair
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。