计蒜客 A2240 轻重搭配
题目
n 个同学去动物园参观,原本每人都需要买一张门票,但售票处推出了一个优惠活动,一个体重为 xx 的人可以和体重至少为 2x2x 配对,这样两人只需买一张票。现在给出了 nn 个人的体重,请你计算他们最少需要买几张门票?
输入格式
第一行一个整数 nn,表示人数。
第二行 nn 个整数,每个整数 a_iai 表示每个人的体重。
输出格式
一个整数,表示最少需要购买的门票数目。
数据范围
对于 30\%30% 的数据:1 \le n \le 251≤n≤25,1\le a_i \le 1001≤ai≤100。
对于 60\%60% 的数据:1 \le n \le 100001≤n≤10000,1\le a_i \le 10001≤ai≤1000。
对于 100\%100% 的数据:1 \le n \le 5\cdot 10^51≤n≤5⋅105,1\le a_i \le 10^51≤ai≤105。
样例解释
11 和 99 配对,77 和 33 配对,剩下 5,55,5 单独,一共买四张票。
Sample 1
Inputcopy Outputcopy 6 1 9 7 3 5 5 4
解析:
首先第一步肯定是用sort排序,然后我刚开始的想法是从中间分开依次用最小的和最大的配对,然后会发现中间的会无法配对就剩下来,这样其实是不对的想法。
正确的做法是从中间分开然后呢,用前一半中最小的a【i】去和另一半中大于等于
2a【i】的数配对,这样得出的结果才是需要的最少票数
AC代码
#include<stdio.h> #include<iostream> #include<algorithm> #include<string.h> using namespace std; int main() {int n,a[500005];int ans=0;scanf("%d",&n);//memset(a,0,sizeof(a));for(int i=1;i<=n;i++){scanf("%d",&a[i]);}sort(a,a+n+1);int p=n/2,q=n;while(p>=1&&q>=n/2){if(a[p]*2<=a[q]){ans++;p--;q--;}elsep--;}printf("%d\n",n-ans); return 0; }
努力努力再努力 ![](/assets/blank.gif)
计蒜客 A2240 轻重搭配相关推荐
- 【计蒜客 - A2240】程序设计:轻重搭配 (贪心)
n 个同学去动物园参观,原本每人都需要买一张门票,但售票处推出了一个优惠活动,一个体重为 xx 的人可以和体重至少为 2x2x 配对,这样两人只需买一张票.现在给出了 nn 个人的体重,请你计算他们最 ...
- 计蒜客 挑战难题 爬楼梯
计蒜客 挑战难题 爬楼梯 假设你现在正在爬楼梯,楼梯有n级.每次你只能爬1级或者2级,那么你有多少种方法爬到楼梯的顶部? 格式: 第一行输入一个数n(n<=50),代表楼梯的级数. 接下来一行输 ...
- 无脑博士的试管们java_计蒜客 无脑博士和他的试管们
标签: 无脑博士有三个容量分别是A,B,C升的试管,A,B,C分别是三个从1到20的整数,最初,A和B试管都是空的,而C试管是装满硫酸铜溶液的.有时,无脑博士把硫酸铜溶液从一个试管倒到另一个试管中,直 ...
- 最短路(遍历边)计蒜客—DD坐地铁
题目: C 城有 n 个站点, m 条双向地铁,每条地铁有一个 companyicompany_icompanyi表示它的公司,如果连续乘坐同一家公司的地铁只要花 1元钱就好.DD现在想出门找萨摩耶 ...
- K - Triangle 计蒜客 - 42405
K - Triangle 计蒜客 - 42405 题意: 给你一个三角形的三点,再给你三角形边上一个点,让你求另一个点(也要在三角形上),使得平分三角形的面积 题解: 计算几何 三角形的三边ab,ac ...
- H - Prince and Princess 计蒜客 - 42402
H - Prince and Princess 计蒜客 - 42402 题意: 你现在要寻找公主,有三种人,第一种是说真话的人(至少为1,因为公主是说真话的人),第二种人是只会说假话的,第三种是胡说八 ...
- C - Digital Path 计蒜客 - 42397 05-29
C - Digital Path 计蒜客 - 42397 题意: 题意就是给出一个n ∗ m的数字矩阵每个矩阵元素之间只能上下左右走,而且下一个位置必须比当前位置的数字大1,入口和出口必须数边缘元素, ...
- 计蒜客可以做计算机编程吗,如果你的编程能力不足以支撑你成为工程师的野心,不妨到计蒜客上学学看...
在人才招聘领域存在这样一个怪圈,高校每年都说是最难就业年.人才过剩,而对于企业HR来说永远都招不到称心如意的人才.这个怪圈在"计蒜客"创始人俞昊然看来,主要是因为当今高校的教学资源 ...
- 计蒜客 - T1012 A*B问题
计蒜客 - T1012 A*B问题 相信你已经学会 A+B 问题了,那么问题又来了- 输入两个正整数 A 和 B ,求 A×B. 输入格式 一行,包含两个正整数 A 和 B,中间用单个空格隔开. 1≤ ...
最新文章
- CI框架 -- 附属类
- 关于在hdfs上对数据创建外部表的原因
- APP测试流程和测试点
- PMT_Header-节目映射表的数据结构2
- CNN笔记:通俗理解卷积神经网络--理解不同输入通道和卷积核通道关系(红色部分)
- Cardano链上首个流动性解决方案商Occam宣布与Changelly合作孵化新项目
- jQuery 学习笔记之二 (jQuery代码风格)
- 实习成长之路:MySQL五:全局锁和表锁 :给表加个字段怎么有这么多阻碍?
- java集中常见的算法讲解
- 多功能的Silverlight控件User Interface Edition for Silverlight下载及详细介绍
- groovy 打印json_groovyJSON - Groovy教程
- lottie android 卡顿,lottie动画设计_免异常总结
- java pgm_如何用Java读取PGM图像?
- ajax 滚动加载 缓存,Ajax实现加载缓存的loding效果
- 网页短信平台国际通道搭建|后台定制-移讯云短信系统
- Delphi FireDAC 出现[FireDAC][DatS]-32. Variable length column [*] overflow. Value length - [*]
- 网络安全不可忽视!企业如何做好网络安全。
- 《GrowingIO指标体系与数据采集》读书笔记
- Swagger工具详解
- 泊松分布,正态分布,指数分布特征函数推导
热门文章
- Tomcat 程序中远程部署
- What Are Cocoa Bindings?
- SAP中一个完整的内部订单预算管理的计划预算和实际预算的应用控制测试
- “慢热”的养老SaaS
- 某计算机的主存空间中,某计算机的主存地址空间中
- 3月第2周全球域名总量TOP20:冠军美国降幅翻两番
- 雪狐新闻APP全程实战开发(Vue+ThinkPHP5+APICloud)
- Android Parcelable反序列化漏洞分析与利用
- WAAS/EGNOS/MSAS/ GAGAN
- 渐进分析(Ο,Ω,Θ)