POJ 1018
#include<iostream>
#define MAXN 105
#define inf 10000000
#include<vector>
#include<iomanip>
#include<algorithm> using namespace std; struct node
{
double b;
double p;
}; vector<double> coll; node _m[MAXN][MAXN];
int size[MAXN];
int n;
void sort_f();
int main()
{
//freopen("acm.acm","r",stdin);
int i;
int j;
int k;
double min;
int test;
double sum;
double max;
double temp;
bool boo;
cin>>test;
while(test --)
{
boo = false;
sum = ;
max = -;
cin>>n;
for(i = ; i < n; ++ i)
{
cin>>size[i];
for(j = ; j < size[i]; ++ j)
{
cin>>_m[i][j].b>>_m[i][j].p;
coll.push_back(_m[i][j].b);
}
}
sort(coll.begin(),coll.end());
sort_f();
for(k = ; k < coll.size(); ++ k)
{
if(k > && coll[k] == coll[k-])
continue;
sum = ;
for(i = ; i < n; ++ i)
{
min = inf;
boo = false;
for(j = ; j < size[i]; ++ j)
{
if(_m[i][j].b >= coll[k])
{
if(_m[i][j].p < min)
min = _m[i][j].p;
boo = true;
}
else
break;
}
if(boo == false)
{
sum = ;
break;
}
sum += min;
}
if(!boo)
break;
if( (temp = double(coll[k]/sum)) > max)
{
max = temp;
//cout<<max<<endl
} }
cout<<setiosflags(ios::fixed)<<setprecision()<<max<<endl;
coll.clear();
}
} void sort_f()
{
int i;
int j;
int k;
for(i = ; i < n; ++ i)
{
for(j = ; j < size[i]; ++ j)
{
for(k = j+; k < size[i]; ++ k)
{
if(_m[i][k].b > _m[i][j].b)
{
iter_swap(&_m[i][k].b,&_m[i][j].b);
iter_swap(&_m[i][k].p,&_m[i][j].p);
}
}
}
}
}
关注我的公众号,当然,如果你对Java, Scala, Python等技术经验,以及编程日记,感兴趣的话。
技术网站地址: vmfor.com
POJ 1018的更多相关文章
- POJ 1018 Communication System(树形DP)
Description We have received an order from Pizoor Communications Inc. for a special communication sy ...
- POJ 1018 【枚举+剪枝】.cpp
题意: 给出n个工厂的产品参数带宽b和价格p,在这n个工厂里分别选1件产品共n件,使B/P最小,其中B表示n件产品中最小的b值,P表示n件产品p值的和. 输入 iCase n 表示iCase个样例n个 ...
- POJ 1018 Communication System(DP)
http://poj.org/problem?id=1018 题意: 某公司要建立一套通信系统,该通信系统需要n种设备,而每种设备分别可以有m1.m2.m3.....mn个厂家提供生产,而每个厂家生产 ...
- POJ 1018 Communication System 贪心+枚举
看题传送门:http://poj.org/problem?id=1018 题目大意: 某公司要建立一套通信系统,该通信系统需要n种设备,而每种设备分别可以有m个厂家提供生产,而每个厂家生产的同种设备都 ...
- 【贪心】Communication System POJ 1018
题目链接:http://poj.org/problem?id=1018 题目大意:有n种通讯设备,每种有mi个制造商,bi.pi分别是带宽和价格.在每种设备中选一个制造商让最小带宽B与总价格P的比值B ...
- poj 1018 Communication System
点击打开链接 Communication System Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 21007 Acc ...
- poj 1018 Communication System_贪心
题意:给你n个厂,每个厂有m个产品,产品有B(带宽),P(价格),现在要你求最大的 B/P 明显是枚举,当P大于一定值,B/P为零,可以用这个剪枝 #include <iostream> ...
- poj 1018 Communication System 枚举 VS 贪心
Communication System Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 21631 Accepted: ...
- 2017ecjtu-summer training #11 POJ 1018
Communication System Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 29218 Accepted: ...
- POJ 1018 Communication System(贪心)
Description We have received an order from Pizoor Communications Inc. for a special communication sy ...
随机推荐
- 命名空间namespace ,以及重复定义的问题解析
名字空间是用来划分冲突域的,把全局名字空间划分成几个小的名字空间.全局函数,全局变量,以及类的名字是在同一个全局名字空间中,有时为了防止命名冲突,会把这些名字放到不同的名字空间中去. 首先我们看一下名 ...
- centos7 rabbitmq安装以及应用
安装单机rabbitmq 1.安装erlang cd /usr.local yum install wget yum install net-tools wget http://erlang.or ...
- yii2学习网站
1.http://tech.anruence.com/ 2.http://www.yiichina.com/doc/guide/2.0/input-multiple-models
- IntelliJ IDEA 2017版 spring-boot使用JdbcTemplate实例
搭建总框架: (1)在pom.xml加入jdbcTemplate的依赖: (2)编写Dao类,声明为:@Repository,引入JdbcTemplate (3)编写Service类,引入Dao进行使 ...
- web service 项目 和 普通 web项目 的 区别
web service 面向的是开发者(需要再次开发) 普通web 面向的是用户(直接使用)
- nodejs中如何使用mysql数据库[node-mysql翻译]
nodejs中如何使用mysql数据库 db-mysql因为node-waf: not found已经不能使用,可以使用mysql代替. 本文主要是[node-mysql]: https://www. ...
- obj-c的优缺点
优点: 1) Cateogies : 类别 2) Posing : 扮演 3) 动态识别 : 编译时与运行时动态识别类型 4) 指标计算 : 指针计算 指针的 +- * / 5) 弹性信息传递 : 某 ...
- hdu 1284 钱币兑换
题目 我们用dp[n]表示用这些硬币组成n的方法总数.... 然后随着硬币种类的增加来更新dp[]的值,也就是最外面的一层循环for(i :1-->3)开始初始化的时候没有硬币,然后新来了面值为 ...
- java虚拟机加载系统环境变量到内存中
JVM在启动的时候,会将环境变量,转换到 系统属性 里面.可以通过System.getProperty("");来获取.catalina.home属性,就是运行tomcat的JVM ...
- WPF核心对象模型-类图和解析
DispatcherObject是根基类,通过继承该类,可以得到访问创建该对象的UI线程的Dispatcher对象的能力.通过Dispatcher对象,可以将代码段合并入该UI线程执行. Depend ...