UVa:12124 Assemble
来源:互联网 发布:f18ef超级大黄蜂数据 编辑:程序博客网 时间:2024/05/16 14:35
最小值最大化。相当于求下界。用二分法。
思路参考白书。
#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <vector>#include <queue>#include <map>#include <string>#include <algorithm>#define ll long long#define INF 2139062143#define MOD 1000000000#define MAXN 1000005//ios::sync_with_stdio(false);using namespace std;int n,m,b;map<string,int> id;int ID(string str){ if(!id[str]) id[str]=++m; return id[str];}struct Component{ int price,quality;};vector<Component> vec[1005];bool Judge(int x){ int sum=0; for(int i=1;i<=m;++i) { int minn=INF; for(int j=0;j<vec[i].size();++j) if(vec[i][j].quality>=x) minn=min(minn,vec[i][j].price); if(minn==INF) return false; sum+=minn; if(sum>b) return false; } return true;}int Bsearch(int low,int high){ int mid=(low+high+1)/2; while(low<high) { if(Judge(mid)) low=mid; else high=mid-1; mid=(low+high+1)/2; } return mid;}int main(){ int T; scanf("%d",&T); while(T--) { scanf("%d%d",&n,&b); char type[25],name[25]; int p,v; id.clear(); m=0; int maxn=0; for(int i=0;i<=n;++i) vec[i].clear(); for(int i=0;i<n;++i) { scanf("%s%s%d%d",type,name,&p,&v); vec[ID(type)].push_back((Component){p,v}); maxn=max(maxn,v); } int ans=Bsearch(0,maxn); printf("%d\n",ans); } return 0;}
0 0
- Uva 12124 Assemble
- UVA - 12124 Assemble
- UVa:12124 Assemble
- UVA之12124 - Assemble
- UVa 12124 - Assemble
- uva 12124 - Assemble
- UVA 12124 Assemble(二分)
- UVA 12124 - Assemble 解题报告
- UVA 12124 - Assemble(二分答案)
- UVA 12124 - Assemble(二分)
- uva 12124 —— Assemble
- uva 12124 Assemble 模拟+二分
- UVA 12124 UVAlive 3971 Assemble(二分 + 贪心)
- Uva 12124 Assemble 解题报告(二分)
- UVA 12124 UVAlive 3971 Assemble(二分 + 贪心)
- UVA - 12124 Assemble(经典二分函数问题)
- uva 12124 Assemble(二分法->最小值最大化*)
- UVA 12124 Assemble(贪心 二分)
- 那么爱你你却只能说不要。
- VisualVM
- 基于autohotkey(AHK)的通用摘录器的制作
- SQL优化概略
- hdu2036 改革春风吹满地(向量叉乘求面积)
- UVa:12124 Assemble
- C#游戏编程:Flappy guy
- git将版本恢复到制定版本的方法(git撤销提交的版本方法,git revert撤销提交)
- Spiral Matrix
- c++快速查找实现(递归和非递归)
- C/C++ 局部类和嵌套类
- 企业级安全服务权限控制 Acegi安装系统介绍 Spring Framework安全系统
- 三、基于HTTPS协议的12306抢票软件设计与实现--垂直查询效果分享
- Android输入事件流程中的EventHub分析及源码演示