技术标签: 算法
进行一次独木舟的旅行活动,独木舟可以在港口租到,并且之间没有区别。一条独木舟最多只能乘坐两个人,且乘客的总重量不能超过独木舟的最大承载量。我们要尽量减少这次活动中的花销,所以要找出可以安置所有旅客的最少的独木舟条数。现在请写一个程序,读入独木舟的最大承载量、旅客数目和每位旅客的重量。根据给出的规则,计算要安置所有旅客必须的最少的独木舟条数,并输出结果。
输入格式
第一行输入 s(1 \le s \le 10)s(1≤s≤10),表示测试数据的组数;
每组数据的第一行包括两个整数 ww,nn,80 \le w \le 200,1 \le n \le 30080≤w≤200,1≤n≤300,ww 为一条独木舟的最大承载量,nn 为人数;
接下来的一组数据为每个人的重量(不能大于船的承载量);
输出格式
每组人数所需要的最少独木舟的条数。
输出时每行末尾的多余空格,不影响答案正确性
样例输入复制
3
85 6
5 84 85 80 84 83
90 3
90 45 60
100 5
50 50 90 40 60
样例输出复制
5
3
3
这是一道常规题,代码如下,仅供参考:
#include<iostream>
#include<algorithm>
#include<memory.h>
using namespace std;
/*
@author :HaiRu,WU
@from:AHUT
*/
int main(){
int T;
cin >> T;
while(T--){
int w,n;
int max_n=400;
cin >> w>>n;
int weight[max_n];
bool mark[max_n];
memset(mark,false,sizeof(mark));
for(int i=0;i<n;i++){
cin >> weight[i];
}
sort(weight,weight+n);
int cnt=0;
for(int i=0;i<n;i++){
if(!mark[i]){
int num=w-weight[i];
mark[i]=true;
int j;
for(j=n-1;j>=0;j--){
if(!mark[j] && num>=weight[j]){
num=num-weight[j];
mark[j]=true;
break;
}
}
cnt++;
}
}
cout<<cnt<<endl;
}
return 0;
}
亲测各种go module的使用方法,都没我写的详细,看到即赚到
When you try to access a network path (FQDN) by “start”-“run”-”//machine_name/share_name”, and meet error message “No network provider accepted the given network path.” But when you open the
LINUX下磁盘限额配置(转) 由于忙了几天,今天忙里面偷闲一下搞了一下quota,现在记下来给大家参考下,或许大家有那么一天用得上:),以下测试在RH LINUX8.0成功。 1.先修改 /etc/fstab 文件.在文件...
书接上回,我们在这里讨论一下微分方程模型,也是预测模型的最后一节,以后有想到的再补上、()拟合优度对于非线性情况已经没有意义了。。分类微分方程模型属于白盒模型,将物理或者其他自然科学的关系与预测目标结合出一个模型。但微分方程一般是对变化趋势建模,即不可以用直接量化的物理量来衡量(主要也是为了增加难度,纯一阶物理模型过于无聊了)微分方程模型有两种情况:1.常微分(通常都时间)2.偏微分(不仅仅是对一个变量的导数,而是多个变量)1.单变量:常微分方程,2.多变量:偏微分方程,因此,微分方程指的是又有
/** * 图片转成string * * @param bitmap * @return */ public static String convertIconToString(Bitmap bitmap) { ByteArrayOutputStream baos = new ByteArrayOutputStream(...
一、当一个线程进入某个对象的一个 synchronized的实例方法后,其它线程是否可进入此对象的其它方法?如果其他方法没有 synchronized 的话,其他线程是可以进入的。所以要开放一个线程安全的对象时,得保证每个方法都是线程安全的。二 、乐观锁和悲观锁的理解及 如何实现,有哪些实现方式?悲观锁:总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,
原文地址:http://www.cnblogs.com/tim-li/archive/2012/08/06/2580252.html原作很强悍导航前言基本知识绘制矩形清除矩形区域圆弧路径绘制线段绘制贝塞尔曲线线性渐变径向渐变(发散)图形变形(平移、旋转、缩放)矩阵变换(图形变形的机制)图形组合给图形绘制阴影绘制图像(图片平铺、裁剪、像素处理[不只图像、包
CSU 2070 Seating Chart题意 给出一个序列,求第二个序列的逆序数。解题思路 如果直接暴力求解,肯定会TLE。队友是用归并排序过的,我重新写了遍线段树,算法复杂度是O(nlogn)。 对于使用线段树求逆序数,方法如下。 对于求逆序数,我们只需要求出每个数字的前面有几个比他大的数,最后再把这些数加起来就是逆序数。有了这样的思路,我们就可以...
一. 参数说明①.daemon(服务端)模式:用途: rsync --daemon [选项]...选项 --address=ADDRESS 绑定到指定的地址 --bwlimit=RATE 限制套接字I/O带宽 --config=FILE 不使用默认位置的rsyncd.conf文件,额外指定 -M, --dparam=OVERRIDE 覆盖全局守护进程配置参数 --no-detac...
http://blog.csdn.net/hu3167343/article/details/45223767我们在动态调试app的时候,需要在APP的AndroidManifest.xml文件中添加Android:debuggable="true",然后重打包apk安装之后进行调试。如何不进行重打包就能调试app呢?下面主要介绍两种方法:1. 修改boot.img
在第一篇《如何使用CCRenderTexture创建动态纹理》基础上,增加创建动态山丘,原文《How To Create A Game Like Tiny Wings with Cocos2D 2.X Part 1》,在这里继续以Cocos2d-x进行实现。有关源码、资源等在文章下面给出了地址。步骤如下:1.使用上一篇的工程;2.添加地形类Terrain,派生自CCNode类。文件Te
关于四大机器人的介绍,想必大家已经看了很多小编的文章了,四大家族的背景、企业规模、市场占有率等等,这些大家看这篇文章《限时下载 | 工业机器人四大家族(ABB、库卡、安川)全套资料!》,就不表了。这次小编另辟蹊径,联系了几位高端搞机工程师,找他们要了一些珍藏的专业教材,菜鸟们想要成为资深的工程师,这些教材可是必看的!!1《库卡基础编程手册》部分内容截图以下是手册目录.....(目录太长,就先看到这...