编程题_排列组合问题
文章目录
- 神奇的口袋
- 思路解析
- 程序测试
神奇的口袋
题目详述:神奇的口袋
思路解析
递归:
①物品n个,物品体积逐一放入a[100]中
②递归函数count(i,sum)=count(i+1,sum-a[i])+count(i+1,sum);
其中,i为第i个物品,sum代表剩余空缺体积数
count(i+1,sum-a[i])
代表从第i+1个物品开始,剩余体积数为sum-a[i]的方案数
(隐含意思:已经将a[i]的体积计算进去,即包含a[i]的体积)count(i+1,sum)
代表从第i+1个物品开始,剩余体积数为sum的方案数
(隐含意思:不将a[i]的体积计算进去,即不包含a[i]的体积)
程序测试
import java.util.Scanner;public class Main {private static int[] array= new int[20]; // 题目上已说明(1 <= n <= 20)private static int n; private static int count(int i,int sum) {if(sum==0){return 1; //找到一组和为sum的组合数;}if(i==n||sum<0) {return 0;//i==n说明没有其他的数来组合,sum<0说明组合不出;}return count(i+1,sum-array[i])+count(i+1,sum);//从数组的第i为开始,包含a[i] 和 不包含a[i];}public static void main(String[] args) {Scanner sc = new Scanner(System.in);len = sc.nextInt();for(int i = 0; i<n; i++){array[i] = sc.nextInt();}System.out.println(count(0,40));}
}
编程题_排列组合问题相关推荐
- 环评师c语言题目,C语言考试——编程题_文库吧
C语言考试--编程题_文库吧 2020-09-27 08:21:23 [导读]该数本身,比如153=13+53+33,故153是水仙花数).要求将判断某数是否素数的功.能编成一个独立的函数,然后在ma ...
- Linux环境编程姜林美,Linux环境编程习题_编程题_答案.pdf
Linux环境编程习题_编程题_答案 Linux 境编程-人民邮电出版社-姜林美 课后习题(编程题)答案 第三章 1 第五章 4 第六章 9 第七章 19 第八章 22 第九章 35 第十章 38 三 ...
- Java编程题_面向对象和常用API01_B级
Java编程题_面向对象和常用API01_B级 第1题 面向对象.异常.集合.IO 题干: 请编写程序,完成键盘录入学生信息,并计算总分将学生信息与总分一同写入文本文件 需求:键盘录入3个学生信息(姓 ...
- 数据结构面试题编程题_您下次编程面试时应该了解的顶级数据结构
数据结构面试题编程题 by Fahim ul Haq 通过Fahim ul Haq Niklaus Wirth, a Swiss computer scientist, wrote a book in ...
- 排列组合思维导图_排列组合——排列数专题
在上篇关于排列组合主要考点的介绍中,正男老师提到:排列组合考点通常可以拆分为排列数考点和组合数考点.排列数考点相关试题可以细分为2类,分别为:穷举问题和限制条件问题.本期正男老师就从近六年内的5道涉及 ...
- 图解全排列问题_排列组合的各种知识点以及解题小技巧
八.排列组合中常见模型 (一)分组问题 由于涉及的面比较广,所以是排列.组合中的难点.如果只是断章取义的去教学,不从根本上去加以理解.归纳,那么就很难正确的解答各类题型,下面通过例题予以浅谈. 1.非 ...
- system verilog编程题_拼多多2020校招部分算法编程题合集
拼多多2020校招部分算法编程题2道,多多的魔术盒子和多多的排列函数 其实根据他的匹配职位我们可以看到,这5道题的难度还是并不高,只是作为一个初步筛选,我这边选择了前两道跟大家分享 [编程题一] 多多 ...
- c语言编程数字字母排列组合,如何编程实现排列组合
怎么编程实现排列组合? 例如 编程实现从5人里面随机选3个人出来.有多少种不同的选法? 该如何编写? 需要用到 头文件MATH.H吗,若不用到该怎么写? 谢谢! ------解决方案--------- ...
- java在线编程题_阿里笔试题(2017在线编程题)-- 数串分组 --Java实现
看到有人写了阿里的面试题,心里痒痒,好久 没搞过这些了,写着实现一下 题目 2017年3月阿里在线编程题(实习内推) 给定一串数字 判断是否存在这三个元素,它们将数字串分为四个子串,其中每个子串的数字 ...
- javaee编程题_在JavaEE中使用CDI的简单面向方面的编程(AOP)
javaee编程题 我们编写满足特定业务逻辑的服务API. 涵盖所有服务API(如安全性,日志记录,审核,度量延迟等)的跨领域问题很少. 这是一个重复的非业务代码,可以在其他方法之间重用. 重用的一种 ...
最新文章
- vue render
- java rpm 安装路径_如何查找rpm方式安装的软件路径
- abcde依次进入一个队列_详解队列队形及口令(新教师必看)
- jpa jsf_完整的Web应用程序Tomcat JSF Primefaces JPA Hibernate –第1部分
- 一道哈夫曼二叉树题目--稍微容易一点
- SQL基础(一):SQL语法和命令
- android打开视频噔_Android、iOS不可错过!10款堪称神器的高质量APP,请低调使用...
- sublime全解:从菜鸟到大师
- Windows驱动开发(一)WDM/WDF驱动概述
- laravel.log could not be opened 解决方法
- vue上传excel并展示_(一)vue导入上传excel功能
- 一个Sqrt函数引发的血案
- 2020年某计算机菜鸡的中九保研之旅(武大、华科、北理、西交、中山)
- C# 浅谈基于Wpf下的MVVM模式的设计思想
- OSPF主流LSA及域内域间Vlink虚链路配置
- 华为笔记本linux usb启动,华为MateBook D(2018) BIOS设置u盘启动教程
- 【Git】如何进行分支合并
- 用 MQL5 向导创建您自己的 EA 交易
- 学了一阵子python pygame, 写一些总结,回头看看哪些地方不足
- 计算机图形学 线性代数复习
热门文章
- 正余弦转化之诱导公式:“奇变偶不变、符号看象限”
- HTML5游戏引擎(八)-矢量绘图——绘制矩形-drawRect 绘制圆形-drawCircle 绘制直线-moveTo和 lineTo
- 单AP对多终端无线上行带宽下降问题
- mysq8窗口(开窗)及新特性函数
- Python 将 QQ 聊天记录生成词云(分手了如何欢度情人节?)
- 2019-1-25 画图:画风玫瑰图
- 行业标准 | 证券期货经营机构信息系统备份能力标准 JR/T 0059—2010
- dijkstra 路径搜索算法的c++简单实现
- 启用计算机共享,电脑无法启用共享访问怎么办
- 思科模拟器交换机的几种配置模式