独木舟上的旅行

时间限制: 3000 ms  |  内存限制: 65535 KB
难度: 2
描述

进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别。一条独木舟最多只能乘坐两个人,且乘客的总重量不能超过独木舟的最大承载量。我们要尽量减少这次活动中的花销,所以要找出可以安置所有旅客的最少的独木舟条数。现在请写一个程序,读入独木舟的最大承载量、旅客数目和每位旅客的重量。根据给出的规则,计算要安置所有旅客必须的最少的独木舟条数,并输出结果。

输入
第一行输入s,表示测试数据的组数;
每组数据的第一行包括两个整数w,n,80<=w<=200,1<=n<=300,w为一条独木舟的最大承载量,n为人数;
接下来的一组数据为每个人的重量(不能大于船的承载量);
输出
每组人数所需要的最少独木舟的条数。
样例输入
385 65 84 85 80 84 8390 390 45 60100 550 50 90 40 60
样例输出
533
/*
1.对所有乘客体重升序(降序也可以)排序。
2.因为一条独木舟最多只能乘坐两个人,且乘客的总重量
不能超过独木舟的最大承载量,所以先将升序的体重首尾
(最轻和最重的)相加,如果不超过最大载重,两人坐一
艘船,即最优解,那么下一组比较次轻的和次重的。但是如果超过
最大载重,则最重的那人坐一艘船,将最轻的和次重的
重复步骤2。
3.别忘记最后,当次轻和次重是同一人时,他一人坐一艘船。
*/
#include<cstdio>
#include<algorithm>
using namespace std;bool cmp(int a,int b)
{return a<b;
}//升序 int main()
{int t;scanf("%d",&t);while(t--){ int b,n,sum=0;int i,j;scanf("%d%d",&b,&n);//b是每条船的最大承载量,n是代表人数。 int a[n];for(i=0;i<n;i++)scanf("%d",&a[i]);sort(a,a+n,cmp);//排序 for(i=0,j=n;i<j;i++)//从两头同时开始处理 {//i从头开始,从最小的数开始标记 j--; //最大的重量是a[j-1]; for(;j!=i;j--) //减少j,直到找到可以和i坐一条船的人 {//j从尾开始,从最大的数开始标记 if((a[i]+a[j])<=b){     sum++; break; }//最多两人乘船 else sum++;//让最重的自己坐一条船。 }if(i==j)//别忘记加最后一个数,最后一个人坐一条船。特殊情况 {sum++; break;}}printf("%d\n",sum);}return 0;
}

nyoj71独木舟上的旅行相关推荐

  1. nyoj71 独木舟上的旅行

    独木舟上的旅行 时间限制:3000 ms  |  内存限制:65535 KB 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘客的总重量不能超 ...

  2. NYOJ-71 独木舟上的旅行

    独木舟上的旅行 时间限制: 3000 ms  |  内存限制: 65535 KB 难度: 2 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘 ...

  3. NYOJ71——独木舟上的旅行(贪心)

    题目描述:进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘客的总重量不能超过独木舟的最大承载量.我们要尽量减少这次活动中的花销,所以要找出可以安置所 ...

  4. 贪心算法之——独木舟上的旅行(nyoj71)

    独木舟上的旅行 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘客的总 ...

  5. 独木舟上的旅行http://acm.nyist.net/JudgeOnline/problem.php?pid=71

    独木舟上的旅行 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘客的总 ...

  6. NYOJ 71 独木舟上的旅行 贪心算法 之 乘船问题

    独木舟上的旅行 时间限制:3000 ms  |  内存限制:65535 KB 难度:2      描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人, ...

  7. nyoj 71 独木舟上的旅行 贪心

    独木舟上的旅行 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘客的总 ...

  8. 独木舟上的旅行(贪心)

    独木舟上的旅行 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘客的总 ...

  9. 南阳71(独木舟上的旅行)

    独木舟上的旅行 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别.一条独木舟最多只能乘坐两个人,且乘客的总 ...

最新文章

  1. R语言可视化分面图、假设检验分组t检验、可视化单变量分组分面箱图(faceting bar plot)、添加误差条(error bar)、添加p值、添加抖动数据点(jitter points)
  2. 每天学习30分钟新知识之html教程1
  3. 4.0以后的新布局方式GridLayout
  4. 用美图秀秀(微软调色版)生成的R分量为255的图片在MATLAB和OpenCV中R分量为254
  5. mysql handlers,2 Handlers
  6. pythonturtle画彩虹蟒蛇_python如何用turtle库画蟒蛇?
  7. Delphi 7皮肤控件VCLSkin 5 60的使用
  8. 设置元素浮动的几种方式
  9. 超实用的开源项目—如何将WiFi密码转成二维码进行共享
  10. Excel学习笔记 - 查找表格数据
  11. 华硕主板装系统蓝屏_华硕主板装系统蓝屏怎样设置bios?
  12. x战娘2服务器维护,x战娘2变态版攻略
  13. 2006年网络名言100句(转)
  14. 墨尔本大学 SWEN20003 Project2 课业解析
  15. 我不敢再哭了,因为我怕自己成为职场上的杨超越
  16. matlab符号计算实验心得,Matlab符号计算总结
  17. 致奋斗的年轻人 阿里云在云栖大会等你
  18. 3.7计算机网络(IP数据报格式,IP数据报分片,IPv4)
  19. 从零开始学习UCOSII操作系统2--UCOSII的内核实现
  20. 吃鸡ios和android灵敏度,和平精英灵敏度怎么调最稳2020二指攻略:安卓苹果灵敏度调节方法大全[多图]...

热门文章

  1. live2d实现看板娘达到交互效果
  2. 【hadoop生态之Hbase】HBase部署与使用【笔记+代码】
  3. 计算机底层02-计算机指令与指令集
  4. 设计模式之禅【代理模式】
  5. PS中的颜色模式,8位、16位、32位区别、以及背景内容的区别
  6. AVCON6 系统管理平台 download.action 任意文件下载漏洞
  7. 计算机报名照片不能小于20kb,公务员考试:上传20KB电子照片难倒不少考生
  8. 计算机的关闭程序,电脑中取消关机时强制关闭程序提醒的方法
  9. java jcifs ntlm_Java 使用NTLM身份验证使用soap服务
  10. 软件测试安全性翻译成英语,软件可靠性测试充分性准则,software reliability testing adequacy criterion,音标,读音,翻译,英文例句,英语词典...