牛客网wannafly挑战赛13-D(贪心)
链接:https://www.nowcoder.com/acm/contest/80/D
来源:牛客网
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld
题目描述
最可爱的applese生日啦,他准备了许多个质量不同的蛋糕,想请一些同学来参加他的派对为他庆生,为了不让一部分同学感到不爽,他决定把每个蛋糕都分割成几份(也可以不分割),使得最小的蛋糕的质量与最大的蛋糕的质量的比值不小于一个值。但是applese的刀功并不是很好,所以他希望切尽量少的刀数使得所得到的蛋糕满足条件。由于applese为了保证每一块蛋糕的质量和期望的没有偏差,所以他一刀只能切下一块蛋糕,即将一块蛋糕分成两块,同时,他不能一刀同时切两块蛋糕,也就是说,applese一次只能将一块蛋糕分割成两块指定质量的蛋糕,这两块蛋糕的质量和应等于切割前的蛋糕的质量。Applese还急着准备各种派对用的饰品呢,于是他把这个问题交给了你,请你告诉他至少要切割几次蛋糕
输入描述:
第一行包括两个数T,n,表示有n个蛋糕,最小的蛋糕的质量与最大的蛋糕的质量的比值不小于T 接下来n行,每行一个数wi,表示n个蛋糕的质量
输出描述:
输出包括一行,为最小切割的刀数 数据保证切割次数不超过500
题意:切分蛋糕,使得最小块和最大块的比值大于一个数T。
思路:每块蛋糕应当均匀切分,此外每次选择最大的切,使得它逼近最小的。
#include<iostream>
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
double siz[1005];
double unit[1005],cut[1005];
double T;
int n;
int main()
{while(~scanf("%lf%d",&T,&n)){memset(cut,0,sizeof(cut));double minx=0x3fffffff,maxx=0;int maxp;for(int i=0;i<n;i++){scanf("%lf",&siz[i]);unit[i]=siz[i];minx=min(minx,siz[i]);if(siz[i]>maxx){maxx=siz[i];maxp=i;}}int t=0;while(true){if(minx/maxx>=T){printf("%d\n",t);break;}cut[maxp]++;unit[maxp]=siz[maxp]/(cut[maxp]+1);t++;minx=min(minx,unit[maxp]);maxx=0;for(int i=0;i<n;i++){if(unit[i]>maxx){maxx=unit[i];maxp=i;}}}}
}
牛客网wannafly挑战赛13-D(贪心)相关推荐
- 牛客网 Wannafly挑战赛8 A.小Y和小B睡觉觉
写了一会不想写了... A-小Y和小B睡觉觉 链接:https://www.nowcoder.com/acm/contest/57/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制 ...
- 题解——牛客网Wannafly挑战赛23 B-游戏 (SG函数)
前言 比赛的时候没学过SG函数的蒟蒻以为是道结论题,但是不是QwQ 和dummyummy巨佬一起推了快三个小时的规律 最后去问了真正的巨佬__stdcall __stdcall面带微笑的告诉我们,这是 ...
- 牛客网 Wannafly挑战赛20 A-染色
链接:https://www.nowcoder.com/acm/contest/133/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524 ...
- 牛客网 Wannafly挑战赛27 蓝魔法师
蓝魔法师 链接: https://www.nowcoder.com/acm/contest/215/C 来源:牛客网 题目描述 "你,你认错人了.我真的,真的不是食人魔."--蓝魔 ...
- 牛客网wannafly挑战赛13-E(线段树)
链接:https://www.nowcoder.com/acm/contest/80/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5242 ...
- 牛客网Wannafly挑战赛15 B车辆安排(模拟)AND C 出队(规律)
传送门 :B题:点我 C题: 点我 题目描述 有n个队伍,每个队伍的人数小于等于5,每辆车最多坐5个人,要求一个队伍的人都在一辆车上,求最少的车数 输入描述: 第一行n 第二行n个数,表示每个队伍的人 ...
- [牛客网Wannafly挑战赛24F]wyf的超级多项式
Description 已知 F i = ∑ j = 1 k a j v j i F_i=\sum_{j=1}^{k}a_jv_j^i Fi=∑j=1kajvji 给出 v 1.. k v1. ...
- 牛客网Wannafly挑战赛29 B - 白井黑子 乱搞
Description kuroko 作为常盘台唯一的空间系能力者,在每年例行的能力测试中可绝对不能让 misaka 失望哦,但是由于她的等级只是 level 4「大能力者」,在能力测试中会遇到不少困 ...
- 牛客网Wannafly挑战赛4(割草机)
点击打开链接 思路:不管怎么走,都必须从第一个有'W'的行走到最后一个有'W'的行,对于每一行,都必须处理完这行所有的'W',如果在奇数行,那就应该走到这行和下一行有W的最右边,再往下走,如果在偶数行 ...
最新文章
- 执行高性能任务的强大桌面计算机是,用于高性能任务的强大的桌面计算机是一个______。...
- ISP【三】———— raw读取、不同格式图片差异
- 谷歌浏览器chrome 清除记住密码
- sklearn之XGBModel:XGBModel之feature_importances_、plot_importance的简介、使用方法之详细攻略
- 你应该知道的那些Android小经验
- 哪些人不适合去做科研(转)
- python基础:序列(列表、元组、字符串)、函数、字典、集合
- python numpy数组动态写入csv文件_python - 将NumPy数组转储到csv fi中
- jquery html dom方式创建新html元素
- Gephi教程实战:从入门到精通
- windows取色器(吸取颜色,获取颜色的rgb信息)
- 摄影测量学 :基于python的双像空间前方交会实验
- 公众号快速注册并认证小程序
- 64位Win7 服务器运行失败
- mipi接口 1280(RGB)*720 LCD屏开发驱动笔记帖
- Unity中的Transform Gizmo中的Pivot和Center
- C#,数值计算,基础函数——任意位数π的数值算法源程序与数据可视化
- neon 指令 c语言,NEON初步使用
- 【数据挖掘】葡萄酒质量分析及异常值检测
- linux 中的top命令的介绍
热门文章
- 不同坐标系BIM模型导出参数配置
- 5 HTML标签基础
- 录音文件下载_录音转文字别烦恼,收下这份锦囊,几种方法任你选!
- php微信开发查询分组,微信开发之用户组的介绍
- 用爬虫做字典(网络搜索作业):selenium+xlrd
- 百万年薪背后 是人工智能领域泛起的人才泡沫 2017年07月04日 06:30 PingWest 微博 微信 空间 分享 添加喜爱 //d1.sina.com.cn/201706/26/14587
- java erc 2.0_如何使用Web3j库管理Java中的ERC20令牌
- 35 个非常实用的 Shell 拿来就用脚本实例!
- 简单来说,我们常听到的 22nm、14nm、10nm 究竟是什么意思?
- Linux 下的截屏并编辑的工具-flamshot安装及使用