首页 > 其他分享 >装箱问题

装箱问题

时间:2023-11-11 10:36:59浏览次数:24  
标签:Min int dfs 问题 num 物品 now 装箱

[NOIP2001 普及组] 装箱问题

题目描述

有一个箱子容量为 装箱问题_ci,同时有 装箱问题_ci_02 个物品,每个物品有一个体积。

现在从 装箱问题_ci_02 个物品中,任取若干个装入箱内(也可以不取),使箱子的剩余空间最小。输出这个最小值。

输入格式

第一行共一个整数 装箱问题_ci,表示箱子容量。

第二行共一个整数 装箱问题_ci_02,表示物品总数。

接下来 装箱问题_ci_02 行,每行有一个正整数,表示第 装箱问题_#include_07 个物品的体积。

输出格式

  • 共一行一个整数,表示箱子最小剩余空间。

样例 #1

样例输入 #1

24
6
8
3
12
7
9
7

样例输出 #1

0

提示

对于 装箱问题_ci_08 数据,满足 装箱问题_ci_09装箱问题_ci_10

【题目来源】

NOIP 2001 普及组第四题

#include <algorithm>
#include <iostream>
using namespace std;
int Min = 9999999,v[31],m,n;
inline void dfs(int now,int num) {
  Min = min(Min,now);  //取小值
  if (num == n+1) return;  //选完了
  if (now-v[num] >= 0) dfs(now-v[num],num+1);  //还可以装
  dfs(now,num+1);  //跳过
}
int main (){
  ios :: sync_with_stdio(false);
  cin >> m >> n;
  for (int i = 1;i <= n;i++) cin >> v[i];
  dfs(m,1);  //搜索
  cout << Min;
  return 0;
}

标签:Min,int,dfs,问题,num,物品,now,装箱
From: https://blog.51cto.com/u_16003019/8314428

相关文章

  • pycharm通行证更新问题
    专业版学生认证到期更新方法pycharm到期前一周会发信息给你的账户,或者在pycharm软件内右下角弹出提示更新通行证。具体通行证更新教程与初次申请一样,网上有教程,在此不过多叙述。下面讲讲更新后怎么在软件内更新许可证。如果只是简单通过了申请,网站上的显示如下图:但在软件内,可......
  • 与其他 IEEE 754 表示浮点数的编程语言一样,JavaScript 的 number 存在精度问题,比如 0.
    与其他IEEE754表示浮点数的编程语言一样,JavaScript的number存在精度问题,比如0.2+0.4的结果是0.6000000000000001。以下选项中,能得到0.6的是?AparseFloat(0.2+0.4)BparseFloat((0.2+0.4).toFixed(1))CMath.round(0.2+0.4)DparseFloat((0.2+0.6).toPrec......
  • 解决vim在终端ctrl+i无法跳转问题
    总所周知,终端里使用vim只能Ctrl+o跳转到上一个位置,不能Ctrl+i跳转到下一个位置。因为xterm中tab和ctr+i都是一样,传递的键值是9,所以在vim中无法将tab和ctr_i分离使用。这篇文章来解决这个问题。ctrl+g用于显示正在编辑的文件名,文件大小和位置信息,今天就牺牲ctrl+g原有的功能来实现......
  • 23.11.10(Ajax和Json的数据传输问题)
    使用Ajax写查询功能,后端数据一直传不到前端,遇到parse解析的卡住原因:传来的json数据格式不正确,后端Java还respond了一个success解决方法:把success去掉<scriptsrc="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script><script>$(d......
  • kubeadm部署的k8s证书过期问题 k8s问题排查:the existing bootstrap client certifica
     解决问题:估计跟移动有关,下面那个没解决问题,是因为在原有文件的基础上修改的吧?而这里直接是移走,重新生成了新的。不太清楚是不是这个原因。$cd/etc/kubernetes/pki/$mv{apiserver.crt,apiserver-etcd-client.key,apiserver-kubelet-client.crt,front-proxy-ca.crt,front......
  • [20231109]bash shell快捷键alt+number的问题.txt
    [20231109]bashshell快捷键alt+number的问题.txt--//前一阵子,我想实现12行合并1行的输出,理论讲要使用paste命令加入12个-.输入命令时候要数输入了多少-.我知道bashshell有一--//个快捷键alt+number可以产生连续输入某个字符,但是我一直不知道如何关掉这个功能.有时候误触发这......
  • 分享一个神器,可以永远告别chromedriver和chrome浏览器版本不匹配、爬虫无法运行的问题
    一、下载地址:介绍地址:https://pypi.org/project/chromedriver-py/ 下载安装:pipinstallchromedriver-py二、介绍chromedriver-py是一个Python包,提供了一个简单的接口,用于在Python项目中下载和使用GoogleChromeWebDrive(chromedriver)。通过使用chromedriver-py,开发人员可......
  • APISIX源码安装问题解决
    官网手册的安装语句:curlhttps://raw.githubusercontent.com/apache/apisix/master/utils/install-dependencies.sh-sL|bash-执行install-dependencies.sh报如下错误:Transactioncheckerror:file/usr/share/gcc-4.8.2/python/libstdcxx/v6/printers.pyfrominstal......
  • 金蝶云星空表单插件调用单据的编辑界面网页版生效客户端不生效的问题
     一、调用代码BillShowParameterOtherInAdd=newBillShowParameter(){FormId=FormIdConst.STK_MISCELLANEOUS,ParentPageId=base.View.PageId,......
  • axios的this指向问题
    letvue=newVue({ methods:{ testMethod:function(){ //第一个: axios({ method:"post", url:"CartServlet", }).then(response=>{ this.cartJson=response; }); //第二个: axios({ method:"po......