ACdream 1224 Robbers (贪心)
一道贪心题,很久前做的,代码是我以前写的。
题意:有n个抢劫者抢劫了m块金子,然后第i个人平分xi/y块金子,但是会有除不尽的情况而金子不可再分,那么每个人都有一个不满意度fabs(xi / y - ki/m),ki是每个人实际分得的金子数量,要保证所有人的不满意度和最小,问ki应如何分配。
题解:如果可以除尽,ki就是xi * m / y,否则要把不满意度和再多分一块金子的不满意度的差值存起来,按从大到小排序,把多出来的金子数量num给前num个人多分一块。
#include <iostream> #include <stdio.h> #include <string.h> using namespace std; int a[1050],k[1050]; double cal[1050],b[1050]; int main() {int n,m,y;while(scanf("%d%d%d",&n,&m,&y)!=EOF){int sum=0,d=0;memset(cal,0,sizeof(cal));memset(k,0,sizeof(k));memset(b,0,sizeof(b));for(int i=0;i<n;i++){scanf("%d",&a[i]);k[i]=m*a[i]/y;sum+=k[i];b[i]=(double)a[i]/y-(double)k[i]/m;}d=m-sum;while(d--){double tmp=0;int j=0;for(int i=0;i<n;i++){if(tmp<b[i]){tmp=b[i];j=i;}}k[j]++;b[j]-=10;}for(int i=0;i<n-1;i++)cout<<k[i]<<" ";cout<<k[n-1]<<endl;}return 0; }
转载于:https://www.cnblogs.com/Ritchie/p/5754496.html
ACdream 1224 Robbers (贪心)相关推荐
- ACdream 1224 Robbers
题意:N个抢劫犯去分M个金币,约定了分赃比例,但是金币的最小单位是1,不一定能恰好按比例分.求一种尽可能公平的方案(|Xi/Y - Ki/M|尽量小). 思路:贪心.先整除按比例分,剩下的金币依次分给 ...
- AC_Dream 1224 Robbers(贪心)
题意:n个抢劫犯分别抢到的金钱是k1, k2, k3,...,一共得到的金钱是m, 但是在分钱的时候是按照x1/y, x2/y, x3/y,....的比例进行分配的!这样的话 一些抢劫犯就会觉得不公平 ...
- ZOJ2343 Robbers(贪心)
题目: Robbers Time Limit: 5 Seconds Memory Limit: 32768 KB Special Judge N robbers have robbed the ban ...
- sgu207:Robbers(贪心)
大致翻译:nn个强盗去抢劫银行得到mm个金币,抢劫前他们先确定好了分 配方案,每个人按比例Xi/YXi/Y分配,X1+X2+..Xn=YX_1+X_2+..X_n = Y,mm可能不能 被YY整除,所 ...
- zoj 2343 Robbers 【贪心】
题意: 给你n个金币,然后m个人,每个人有理论的分配份额.但是金币只能整Robbers个整个分. 问你怎么分才能让金币分配的最合理: 题解: 先按比例,把能分的先都分了,最后剩余的,往余数最大的上面补 ...
- UVA 1616 Caravan Robbers 【二分+贪心+枚举分母】
题目链接 题意 给n个互不相包含的区间,求出一个长度的最大值,使得可以在每个区间中选出这样一个长度的子区间,这些子区间互不相交.结果用分数表示 分析 先考虑如果给定了区间长度能不能选出这样的区间.因为 ...
- zoj 2709 Lottery 组合数,概率,贪心 (8-F)
题目地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=2709 题解: 1 组合数的计算,用DP,速度又快又简洁. ...
- 信息学奥赛一本通(1224:最大子矩阵)
1224:最大子矩阵 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 5292 通过数: 3128 [题目描述] 已知矩阵的大小定义为矩阵中所有元素的和.给 ...
- HDU ACM 1224 Free DIY Tour (SPFA)
Free DIY Tour Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To ...
最新文章
- C/C++语言链表的排序与查找定位
- RedisDeskTopManager连接时提示:can't nonnect to redis-server
- jquery与ajax的XMLHttpRequest对象介绍
- ASP.NET AJAX - Timer控件之摆放位置的影响
- 为什么说RESTful对程序员如此重要
- vss 6.0配置VS2005、VS2008 ---- 图文
- 运用思维导图学习数据分析的五个步骤
- 小米wifi 苹果驱动安装教程macOS Mojave 10.14,Sierra 10.12测试通过
- 【weblogic部署应用】
- 计算机 A类会议论文,一篇论文被CCF A类会议SIGIR 2021录用!
- 《你的降落伞是什么颜色》书摘
- 利用python爬取教务系统中成绩
- 流浪动物救助服务网站设计与实现(J2EE)
- python计算对数收益率_为VNPY的K线序列管理工具ArrayManager增加对数收益率队列
- 《MySQL必知必会》学习笔记——组合查询、全文本搜索
- android与createjs交互,createjs高级教程:createjs与dom的协作
- Mac OS安装NS 3
- aux ps 和top_关于vmstat,top,ps aux查看的cpu占用率不一致的问题
- 【金猿人物展】天云数据雷涛:从数据湖到湖仓一体再到数据编织,完成的是燃油车到油电混再到纯电技术的改造...
- 记一次 .NET 某智慧物流WCS系统CPU爆高分析
热门文章
- 【android】两个按钮的宽度各占屏幕的一半
- Navicat Premium 连接 Oracle 数据库
- 如何把一个程序中 Edit 中的文本赋给另一个程序的 Edit ? - 回复 Disk_ 的问题
- 3.6.3 无线局域网
- 修改域名dns服务器,新网互联域名如何修改DNS设置方法
- php文件有哪几种,PHP常用的文件操作函数有哪些
- latex常见编译错误和细节
- 从源码分析DEARGUI之动态特效
- msdn 上的关于delegate和event的一个例子,理解后加点评论
- 领取Virmach免费Minecraft主机搭建“我的世界”服务器