poj1018
来源:互联网 发布:sql中group by 编辑:程序博客网 时间:2024/06/06 12:20
用的是最笨的方法,直接暴力啦!
#include<iostream>using namespace std;typedef struct fun{int b,p;}rr;fun a[105][105];int b[105];int cmp(const void *a,const void *b){fun *c=(fun *)a;fun *d=(fun *)b;if(c->p!=d->p)return c->p-d->p;elsereturn c->b-d->b;}int main(){int i,j,t,n,k,sign;scanf("%d",&t);while(t--){scanf("%d",&n);for(i=0; i<n; i++){scanf("%d",&b[i]);for(j=0; j<b[i]; j++)scanf("%d%d",&a[i][j].b,&a[i][j].p);qsort(a[i],b[i],sizeof(fun),cmp);}/*for(i=0; i<n; i++){for(j=0; j<b[i]; j++)printf("%d %d ",a[i][j].b,a[i][j].p);printf("\n");}*/int bt,price;double s=0,q;for(i=0; i<n; i++){ for(j=0; j<b[i]; j++){sign=0;bt=a[i][j].b;price=a[i][j].p;for(k=0; k<n; k++){if(k==i)continue;int r=0;while(a[k][r].b<bt && r<b[k])r++;if(r>=b[k])//不存在以这个为最小的{sign=1;break;}elseprice+=a[k][r].p;}if(sign==0){ q=(1.0*bt)/(1.0*price); if(q>s) s=q;}}}printf("%0.3lf\n",s);}return 0;}
- POJ1018
- poj1018
- poj1018
- poj1018
- poj1018
- poj1018
- poj1018
- poj1018
- poj1018
- poj1018
- POJ1018
- poj1018
- poj1018
- poj1018
- poj1018
- POJ1018
- POJ1018
- poj1018
- 使用java从一个整数数组中查找第二大的数,仅用一次循环,不使用java自带的排序
- 过度表扬会严重削弱孩子的意志力
- flex上传多个文件
- 我们每天吸入的颗粒物最后都到哪去了?
- java Web系统中ant打包的使用
- poj1018
- 为什么那么多人工作都不开心?
- 文字选中行 字体凸出变大变亮效果
- javascript基础小结
- 文件搜索
- java 深浅拷贝 clone
- PHP数据结构预热:PHP的迭代器
- jdbctempleate 执行postgres 数据库存储过程返回结果集
- java迷宫