杭电--1009 C语言实现
思路:要用有限的猫粮得到最多的javabean,则在房间中得到的javabean比例应尽可能的大。 用一个结构体,保存每个房间中的javabean和猫粮比例和房间号,然后将结构体按比例排序,则从比例最大的房间开始交换javabean,即可得到最大值。 #include<stdio.h>
#include<stdlib.h> typedef struct k_ {
double k;//存储每个房间中javabean和猫粮的比例 int x;//存储房间号 }K_; int cmp(const void *a, const void *b) {
return *(double *)a > *(double *)b ? - : ;
} int main() {
int j[], f[], i;
K_ k[];
int m, n;
double javabean;
while (scanf("%d%d", &m, &n) != EOF && !(m == - && n == -)) {
javabean = ;
for (i = ; i < n; i++) {
scanf("%d%d", &j[i], &f[i]);
k[i].k = (double)j[i] / f[i];
k[i].x = i;
}
qsort(k, n, sizeof(k[]), cmp);
for (i = ; i < n; i++) {
if (m > f[k[i].x]) {
javabean += j[k[i].x];
m -= f[k[i].x];
}
else {
javabean += ((double)j[k[i].x] * ((double)m / f[k[i].x]));
break;
}
}
printf("%.3lf\n", javabean);
}
return ;
}
杭电--1009 C语言实现的更多相关文章
- 杭电2024 C语言合法标识符
链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=2024 开始真的对这题是一点头绪都没有,简直了.然后事实证明是我想多了,这题主要是把概念给弄清楚 ...
- FatMouse' Trade(杭电1009)
FatMouse' Trade Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Tot ...
- 杭电 1009 FatMouse' Trade (贪心)
Problem Description FatMouse prepared M pounds of cat food, ready to trade with the cats guarding th ...
- 杭电ACM刷题(1):1002,A + B Problem II 标签: acmc语言 2017-05-07 15:35 139人阅读 评
最近忙于考试复习,没有多少可供自己安排的时间,所以我利用复习之余的空闲时间去刷刷杭电acm的题目,也当对自己编程能力的锻炼吧. Problem Description I have a very si ...
- 杭电ACM分类
杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...
- 杭电acm习题分类
专注于C语言编程 C Programming Practice Problems (Programming Challenges) 杭电ACM题目分类 基础题:1000.1001.1004.1005. ...
- 杭电acm 1002 大数模板(一)
从杭电第一题开始A,发现做到1002就不会了,经过几天时间终于A出来了,顺便整理了一下关于大数的东西 其实这是刘汝佳老师在<算法竞赛 经典入门 第二版> 中所讲的模板,代码原封不动写上的, ...
- C#利用POST实现杭电oj的AC自动机器人,AC率高达50%~~
暑假集训虽然很快乐,偶尔也会比较枯燥,,这个时候就需要自娱自乐... 然后看hdu的排行榜发现,除了一些是虚拟测评机的账号以外,有几个都是AC自动机器人 然后发现有一位作者是用网页填表然后按钮模拟,, ...
- 杭电2034——人见人爱A-B
#include <stdio.h> #include <algorithm> using namespace std; int main () { int a[110],b[ ...
随机推荐
- 安装Mysql 8.0的艰难体验
背景: Mysql 8.0 以后版本,在性能等方面有了很大提升,而且在自动编号.Timestamp等字段的设置上有了很方便的进步,因此在一年前即开始将原有的基于5.5版本的服务器逐渐向8.0转移.但转 ...
- chrome最耐看的主题
google chrome最耐看的主题James White大家可以尝试一下
- xlwings excel(二)
常用函数和方法 Book 工作簿常用的apiwb=xw.books[‘工作簿名称'] wb.activate()激活为当前工作簿 wb.fullname 返回工作簿的绝对路径 wb.name 返回工作 ...
- 从零开始ming的多人联机游戏--游戏客户端(1)六边形地图
打算做的小游戏是一个多人联机的策略类游戏,类似于<文明>那种 游戏的玩法并不确定,开这个坑主要是为了入门后端开发,顺便熟悉下游戏开发 这篇文章使用unity,实现了六边形单元地图的创建.后 ...
- Oracle数据库、实例、用户、表空间、表之间的关系
完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等): 2) Oracle数据库实例则是一组Ora ...
- 实验16:ACL
实验13-1:标准ACL Ø 实验目的通过本实验可以掌握:(1)ACL 设计原则和工作过程(2)定义标准ACL(3)应用ACL(4)标准ACL 调试 Ø 拓扑结构 本实验拒绝PC1 所在网 ...
- list练习题—输入工人信息
1) 创建一个List,在List 中增加三个工人,基本信息如下: 姓名 年龄 工资 zhang3 18 3000 li4 25 3500 wang5 22 3200 2) 在li4 之前插入一个工人 ...
- pugixml简单实用
实现快递查询,调用快递100的API,未完成. #include <iostream> #include <fstream> #include <string> # ...
- linux笔记之解压
从1.15版本开始tar就可以自动识别压缩的格式,故不需人为区分压缩格式就能正确解压: Linux下常见的压缩包格式有5种:zip tar.gz tar.bz2 tar.xz tar.Z 其中tar是 ...
- C++标准模板库(STL)学习笔记
C++标准模板库(STL) 一.vector(变长数组) 1.使用vector #include <vector> using namespace std; 2.vector的定义 vec ...