poj 3622 Gourmet Grazers STL之multiset
来源:互联网 发布:乐视投屏 for mac 编辑:程序博客网 时间:2024/05/21 03:57
主要是STL的应用吧。。。
题意:
有很多种草,有两个属性:价格和新鲜度;有很多牛,它们都会各自需求一种草,要求是其价格最低为ai,新鲜度最低为bi,且这些牛不希望自己的草和别人的一样。问要满足所有需求的最小花费是多少?
题解:
大概是贪心吧。。这种东西还算比较明显吧。。
想不到的算法大概都是贪心或者二分答案?
所以我们把牛的挑剔程度排个序。然后把每种草再排个序。然后枚举每一个牛将符合条件的草的价钱扔进multiset,然后找第一个>=当前牛要求价钱的,删掉。
复杂度的话。不是很会算。
大概O((n+m)logm)的?(⊙o⊙)
所以这篇主要目的,是讲STL应用–multiset
其实大部分操作是和set一样的。
这里用到了插入 insert;
返回 lower_bound;
清除erase();
#include<cstdio>#include<cstring>#include<set>#include<algorithm>#define int long longusing namespace std;//by mars_chint n,m; multiset<int> mt;struct data{ int a,b;}c[100005];struct node{ int a,b;}g[100005];bool cmp1(data a,data b){ return a.b>b.b;}bool cmp2(node a,node b){ return a.b>b.b;}signed main(){ scanf("%d%d",&n,&m); for(int i=1;i<=n;i++) { scanf("%d%d",&c[i].a,&c[i].b); } for(int i=1;i<=m;i++) { scanf("%d%d",&g[i].a,&g[i].b); } sort(c+1,c+n+1,cmp1); sort(g+1,g+m+1,cmp2); int p=1; int ans=0; for(int i=1;i<=n;i++) //枚举每一头牛 { while(c[i].b<=g[p].b && p<=m) { mt.insert(g[p++].a); } multiset<int>::iterator it=mt.lower_bound(c[i].a); if(it==mt.end()) //没有元素返回的为指针 { printf("%d\n",-1); return 0; } ans+=*it; mt.erase(it); } printf("%lld\n",ans); return 0;}
0 0
- poj 3622 Gourmet Grazers STL之multiset
- poj 3622 Gourmet Grazers
- poj 3622 Gourmet Grazers
- POJ 3622 Gourmet Grazers
- 【poj 3622】Gourmet Grazers
- poj3622 Gourmet Grazers 贪心,multiset
- POJ 3622 Gourmet Grazers(set)
- POJ 3622 Gourmet Grazers (数据结构)
- poj 3622 Gourmet Grazers 挑剔的美食家(贪心)
- POJ - 3622/USACO - Dec07 Gold Gourmet Grazers 挑剔的美食家 重庆一中高2018级竞赛班第五次测试 2016.7.26 Problem 4
- poj3622 Gourmet Grazers(贪心+Treap)
- STL之multiset应用。
- STL之multiset简介
- STL 之 multiset 多集
- STL之 multiset
- STL之multiset简介
- stl之multiset,multimap
- STL之multiset
- android导入项目汉字乱码
- Android studio打包应用程序出现 '注: 某些输入文件使用或覆盖了已过时的 API'
- Android 使用9Patch图片做背景
- PS(PhotoShop)替换纯色图片的颜色
- centos7源码装apache,mysql,php及各种问题的解决办法
- poj 3622 Gourmet Grazers STL之multiset
- 牛客网刷题之字符串的排列
- 请列举出你所知道的所有通讯协议,并阐述他们的应用场合?
- Merge Sorted Array | LeetCode
- 设计模式之观察者模式
- (八)Servlet就是这样-JDBC及相关
- Android缓存框架 DiskLruCache
- BZOJ4386[POI2015] Wycieczki
- linux-2.6.29 linux设备驱动归纳总结 目录