题目描述
V8为了讨女朋友开心,给lx承包大活后面那个水塘。为了筹集资金,V8偷偷地溜进了一座古墓,发现在他面前有金光闪闪的若干小箱子,里面全都是金粉,作为横行于各种@#¥&场所的V8来说,辨别不同成色的金粉早已不在话下,很快,他就给这些金粉的价值做出了评估,可惜V8力气太小,只能带走V体积的金粉,现在告诉你这些小箱子的体积,和每个箱子里面金粉的价值,问V8最多能带走多少价值的金粉?
输入
多组数据
第一行一个T,表示数据组数
之后对于每组数据
第一行一个整数n(1<=n<=10^3),表示箱子的数量,
之后n行,每行两个整数v,w(0<v<=10^3,0<=w<=10^3),分别表示箱子的体积和里面金粉的价值。
最后一行一个整数V(0<=V<=10^3),表示V8能带走的最大体积。
输出
每组数据一行,每行一个浮点数,表示最大价值,保留小数点后四位。
答案的绝对误差不超过10^-4即判为正确。
--正文
第一次做special judge,不过题很简单
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
using namespace std; struct Box {
double Value,Weight,ActualValue;
};
struct Box box[];
int n;
bool cmp(struct Box b1,struct Box b2){
if (fabs(b1.ActualValue-b2.ActualValue) < 1e-)
return (b1.Weight < b2.Weight);
return (b1.ActualValue > b2.ActualValue);
} int main(){
int time,T; scanf("%d",&T);
for (time=;time<=T;time++){
scanf("%d",&n);
int i;
for (i=;i<=n;i++){
double v,w;
scanf("%lf %lf",&v,&w);
box[i].Value = w; box[i].Weight = v;
box[i].ActualValue = w / v;
}
sort(box+,box++n,cmp);
double res = ;
double V;
scanf("%lf",&V);
for (i=;i<=n;i++){
if (V >= box[i].Weight) {
V = V - box[i].Weight;
res += box[i].Value;
}
else {
res += V*box[i].ActualValue;
break;
}
}
printf("%.4lf\n",res);
} return ;
}
XidianOJ 1087 浪漫的V8的更多相关文章
-
Chrome V8引擎系列随笔 (1):Math.Random()函数概览
先让大家来看一幅图,这幅图是V8引擎4.7版本和4.9版本Math.Random()函数的值的分布图,我可以这么理解 .从下图中,也许你会认为这是个二维码?其实这幅图告诉我们一个道理,第二张图的点的分 ...
-
windows下使用VS2015编译V8 JavaScript引擎(v5.5 - 2016/09)
今天心血来潮, 下载了 v8,,然后就想着用vs编译 但是大家都苦恼的是 v8并不直接提供 vs用的项目文件和解决方案(.sln) 于是,在网上搜来搜去, 折腾来折腾去的; 终于一点一点的尝试, 可以 ...
-
判断js引擎是javascriptCore或者v8
来由 纯粹的无聊,一直在搜索JavaScriptCore和SpiderMonkey的一些信息,却无意中学习了如何在ios的UIWebView中判断其js解析引擎的方法: if (window.de ...
-
BZOJ 1087: [SCOI2005]互不侵犯King [状压DP]
1087: [SCOI2005]互不侵犯King Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 3336 Solved: 1936[Submit][ ...
-
[翻译] V8引擎的解析
原文:Parsing in V8 explained 本文档介绍了 V8 引擎是如何解析 JavaScript 源代码的,以及我们将改进它的计划. 动机 我们有个解析器和一个更快的预解析器(~2x), ...
-
nodejs与v8引擎
Motivation JavaScript 是一款拥有「自动垃圾回收」功能的编程语言. 市面上具有这样功能的语言,一般都是拥有相对应的虚拟机的,像 Java的JVM ,C#的CLR ,PHP的Zend ...
-
【BZOJ 1087】【SCOI 2005】互不侵犯King
http://www.lydsy.com/JudgeOnline/problem.php?id=1087 很简单的状压,需要预处理,我两个状态可不可以挨着的预处理出错WA了好几次. 这个位运算预处理好 ...
-
V8 的 typeof null 返回 ";undefined"; 的 bug 是怎么回事
1997 年,IE 4.0 发布,带来的众多新特性中有一个对未来“影响深远”的 DOM API:document.all.在随后的 6 年里,IE 的市场占有率越来越高,直到 2003 年的 95%. ...
-
轮廓线DP POJ3254 &;&; BZOJ 1087
补了一发轮廓线DP,发现完全没有必要从右往左设置状态,自然一点: 5 6 7 8 9 1 2 3 4 如此设置轮廓线标号,转移的时候直接把当前j位改成0或者1就行了.注意多记录些信息对简化代码是很有帮 ...
随机推荐
-
es6转es5
一.在没有IDE情况下的转换 在"我的电脑->D盘”新建个文件夹es6,文件夹里新建一个文件es6.js. 打开命令行窗口 1.先全局安装babel-cli,输入命令 npm inst ...
-
Android Studio开发第四篇版本管理Git(下)
前面一片介绍了在as下如何关联远程仓库,这篇就介绍在开发过程中怎么应用. 提交+Push 如果本地开发代码有改动了或者你觉得某功能做完了,你打算把改动代码提交到远程仓库,这个时候很简单, 还是在工具栏 ...
-
Android 学习笔记之数据存储SharePreferenced+File
学习内容: Android的数据存储.... 1.使用SharedPreferences来保存和读取数据... 2.使用File中的I/O来完成对数据的存储和读取... 一个应用程序,经常需要与用 ...
-
Eclipse中部署hadoop2.3.0
1 eclipse中hadoop环境部署概览 eclipse 中部署hadoop包括两大部分:hdfs环境部署和mapreduce任务执行环境部署.一般hdfs环境部署比较简单,部署后就 可以在ecl ...
-
DRUPAL点滴
1 admin/config/user-interface/xxx在hook_menu里定义这样一个path,就会在configuration界面看到xxx的链接 2 $news_items = db ...
-
对AppStore中的项目进行评分(转载)
在ios6.0前跳转到appstore评分一般是直接跳转到appstore评分NSString *evaluateString = [NSString stringWithFormat:@" ...
-
css cursor属性-显示的光标的类型(形状)的用法和定义
在网页布局的时候,在特定的地方,光标形状各有区别.这个时候,就需要用到css的cursor属性.根据自身需要选择设置鼠标指针样式. 定义和用法 cursor 属性规定要显示的光标的类型(形状). 该属 ...
-
springboot设置session超时和session监听
2.0版本以下设置session超时时间 1. springboot 2.0版本以下配置session超时 1.1 application.properties配置文件: spring.sessio ...
-
手动写Entity Framework 数据库上下文和Model实体
1.引用EF对应的程序集 使用命令安装EntityFramework包Install-Package EntityFramework Entity Framework简单目录: 1.context数据 ...
-
vue-router路由管理器
安装vue-router npm install vue-router 在main.js中引入 import VueRouter from 'vue-router' Vue.use(VueRouter ...