P2018 「Nescafé26」小猫爬山
时间: 1000ms / 空间: 131072KiB / Java类名: Main

背景

Freda和rainbow饲养了N只小猫,这天,小猫们要去爬山。经历了千辛万苦,小猫们终于爬上了山顶,但是疲倦的它们再也不想徒步走下山了(呜咕>_<)。

描述

Freda和rainbow只好花钱让它们坐索道下山。索道上的缆车最大承重量为W,而N只小猫的重量分别是C1、C2……CN。当然,每辆缆车上的小猫的重量之和不能超过W。每租用一辆缆车,Freda和rainbow就要付1美元,所以他们想知道,最少需要付多少美元才能把这N只小猫都运送下山?

输入格式

第一行包含两个用空格隔开的整数,N和W。
接下来N行每行一个整数,其中第i+1行的整数表示第i只小猫的重量Ci。

输出格式

输出一个整数,最少需要多少美元,也就是最少需要多少辆缆车。

测试样例1

输入

5 1996
1
2
1994
12
29

输出

2

备注

对于100%的数据,1<=N<=18,1<=Ci<=W<=10^8。
Nescafé26

 【题解】

分显然

 #include <iostream>
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <algorithm>
inline void read(int &x){
x = ;char ch = getchar(),c = ch;
while(ch < '' || ch > '') c = ch, ch = getchar();
while(ch <= '' && ch >= '')x = x * + ch - '', ch = getchar();
if(c == '-')x = -x;
}
const int MAXN = + ;
const int INF = 0x3f3f3f3f;
int n,w,weight[MAXN],value[MAXN],ans;
void dfs(int now, int cnt){
if(cnt > ans)return;
if(now == n + )
{
ans = cnt;
return;
}
for(register int i = ;i <= cnt;++ i)
if(weight[i] + value[now] <= w)
weight[i] += value[now], dfs(now + , cnt), weight[i] -= value[now];
weight[cnt + ] = value[now],dfs(now + , cnt + ),weight[cnt + ] = ;
}
int main(){
read(n);read(w);
for(register int i = ;i <= n;++ i) read(value[i]);
ans = INF;
std::sort(value + , value + + n, std::greater<int>());
dfs(, );
printf("%d", ans);
return ;
}

Tyvj2018

TyvjP2018 「Nescafé26」小猫爬山的更多相关文章

  1. tyvj P2018 「Nescafé26」小猫爬山 解题报告

    P2018 「Nescafé26」小猫爬山 时间: 1000ms / 空间: 131072KiB / Java类名: Main 背景 Freda和rainbow饲养了N只小猫,这天,小猫们要去爬山.经 ...

  2. 「CH2201」小猫爬山 解题报告

    CH2201 小猫爬山 背景 Freda和rainbow饲养了N只小猫,这天,小猫们要去爬山.经历了千辛万苦,小猫们终于爬上了山顶,但是疲倦的它们再也不想徒步走下山了(呜咕>_<). 描述 ...

  3. 「2014-5-31」Z-Stack - Modification of Zigbee Device Object for better network access management

    写一份赏心悦目的工程文档,是很困难的事情.若想写得完善,不仅得用对工具(use the right tools),注重文笔,还得投入大把时间,真心是一件难度颇高的事情.但,若是真写好了,也是善莫大焉: ...

  4. 「译」JUnit 5 系列:条件测试

    原文地址:http://blog.codefx.org/libraries/junit-5-conditions/ 原文日期:08, May, 2016 译文首发:Linesh 的博客:「译」JUni ...

  5. 「译」JUnit 5 系列:扩展模型(Extension Model)

    原文地址:http://blog.codefx.org/design/architecture/junit-5-extension-model/ 原文日期:11, Apr, 2016 译文首发:Lin ...

  6. JavaScript OOP 之「创建对象」

    工厂模式 工厂模式是软件工程领域一种广为人知的设计模式,这种模式抽象了创建具体对象的过程.工厂模式虽然解决了创建多个相似对象的问题,但却没有解决对象识别的问题. function createPers ...

  7. 「C++」理解智能指针

    维基百科上面对于「智能指针」是这样描述的: 智能指针(英语:Smart pointer)是一种抽象的数据类型.在程序设计中,它通常是经由类型模板(class template)来实做,借由模板(tem ...

  8. 「JavaScript」四种跨域方式详解

    超详细并且带 Demo 的 JavaScript 跨域指南来了! 本文基于你了解 JavaScript 的同源策略,并且了解使用跨域跨域的理由. 1. JSONP 首先要介绍的跨域方法必然是 JSON ...

  9. 「2014-3-18」multi-pattern string match using aho-corasick

    我是擅(倾)长(向)把一篇文章写成杂文的.毕竟,写博客记录生活点滴,比不得发 paper,要求字斟句酌八股结构到位:风格偏杂文一点,也是没人拒稿的.这么说来,arxiv 就好比是 paper 世界的博 ...

随机推荐

  1. mysql设置密码登录

    参考: https://blog.csdn.net/Light_Breeze/article/details/82070222 https://www.jianshu.com/p/d979df2791 ...

  2. Android 开发 AudioRecord音频录制

    前言 Android SDK 提供了两套音频采集的API,分别是:MediaRecorder 和 AudioRecord,前者是一个更加上层一点的API,它可以直接把手机麦克风录入的音频数据进行编码压 ...

  3. windows 服务下搭建jsp运行环境

    此处搭建的是运行环境,不是开发环境. 1, 下载sdk 并安装  1.8      http://rj.baidu.com/soft/detail/14459.html?ald 2, 配置环境变量 步 ...

  4. 关于bind

    1, 目的 使程序可以感知到事件 2, 格式 widget.bind(event, handler) 3, handler注意事项 在这里, handler作为一个函数, 是需要一个event对象作为 ...

  5. visual studio 2013 打开失败 ,报错:未能完成操作,不支持此接口

    因为从新安装了.net 4.0版本,再打开visual studio 2013时,提示报错:未能完成此操作,不支持接口 解决办法:从microsoft官网下载了最新4.5版本进行安装后.即可成功打开.

  6. PHP declare 之 strict_types=1

    PHP中申明 declare(strict_types=1)的作用:  strict_types=1 及开启严格模式.默认是弱类型校验.具体严格模式和普通模式的区别见下面代码. code1: < ...

  7. Echarts在Vue中的使用

    1.使用 cnpm 或 npm 安装 Echarts cnpm方式 cnpm install echarts -S 或者 npm方式 npm install echarts --save 2.在项目文 ...

  8. 用Jmeter参数化实现接口自动化测试

    本文记录如何使用Jmeter参数化(csv)实现接口自动化——测试Token不同入参情况下,接口请求能够返回正确的结果 1. 首先需要使用Jmeter获取一个Token,如何获取暂略(同一般访问请求方 ...

  9. Webpack构建前端项目

    前言 公司据说要搞前后端分离,趁这两天项目完成的差不多,抓紧时间学习一下前端知识 现在流行前端项目工程化,那么第一个问题就是如何创建工程(项目),第一次玩webpack 通过 NPM 创建项目 # 创 ...

  10. Scrapy框架Crawler模板爬虫

    1.创建一个CrawlerSpider scrapy genspider -t crawl wx_spider 'wxapp-union.com' #导入规则 from scrapy.spiders ...