当前位置: 首页 > 编程日记 > 正文

多重集表示合json数据_计数DP(划分数,多重集组合数)

划分数:把n个无区别的物品划分成不超过m组。 dp[i][j]=j的i划分的总数。 dp[i[j]=dp[i][j-i]+dp[i-1][j] 即:将j个物品分成i份,有两种情况:每份划分都大于等于1 dp[i][j-i]; 存在有一份以上用0划分dp[i-1][j]

int main()

{

int n,m;

cin>>n>>m;

dp[0][0]=1;

for(int i=1;i<=n;i++)

for(int j=0;j<=n;j++)

{

if(j>=i)

dp[i][j]=dp[i][j-i]+dp[i-1][j];

else

dp[i][j]=dp[i-1][j];

}

cout<

return 0;

}

多重集组合数:n种物品,第i种有a[i]个,从中选取m个,有多少种不同的选择方法? dp[i+1][j]:从[0, i]号物品中选取j个物品的方法。 dp[i+1][j] = dp[i][j] + dp[i+1][j-1] 这是我们很直观想到的一个递推关系:dp[i][j]表示从i号物品中选0个, dp[i+1][j-1]从i号物品中至少选择1个 实际上,由于是多重集而不是完全集合,我们已经选取了一个i号物品,所以dp[i+1][j-1]表示的不是从i号物品中选择至少一个的数目,因为dp[i+1][j-1]包含了选取a[i]个i号物品(此时总共选择了a[i]+1个物品了),这种情况是应该去掉。需要减去dp[i][j-a[i]-1],所以应该是###dp[i+1][j] = dp[i][j] + dp[i+1][j-1] - dp[i][j-1-a[i]];

void solve()

{

for(int i=0;i<=n;i++)

dp[i][0]=1;

for(int i=0;i

for(int j=1;j<=m;j++)

{

if(j-1>=a[i])

dp[i+1][j]=(dp[i+1][j-1]+dp[i][j]-dp[i][j-1-a[i]]+mod)%mod;

else

dp[i+1][j]=(dp[i+1][j-1]+dp[i][j])%mod;

}

cout<

}

相关文章:

搭建PHP环境遇到的问题!!

为什么80%的码农都做不了架构师&#xff1f;>>> 问题1&#xff1a; 再次./configure以下错误发生 configure: error: xml2-config not found. Please check your libxml2 installation. 解决方法&#xff1a; 安装libxml2 # yum install libxml2-devel 问题2&…

linux进程间通信:shell管道 | 的实现

文章目录介绍重定向函数介绍总结linux terminal输入如下命令&#xff0c;其中"|"符号即为我们上文中所说的无名管道介绍 正如我们上文中所描述的"|“无名管道提供了具有亲缘关系的进程之间的通信&#xff0c;它由于直接使用系统调用&#xff0c;运行效率较高。…

Golang的接口

当一只鸟走路像鸭子&#xff0c;游泳像鸭子&#xff0c;叫起来也像鸭子&#xff0c;那么我们就认为它就是鸭子。 Duck typing 的理念因此比喻得名。 Golang 通过 interface 实现 duck typing。 Effective Go 文章中这样描述 interface: interface 指定了一种描述对象行为的方法…

mysql 5.6.15_mysql-5.6.15-win32.zip免安装配置

此随笔是根据网上的资料整理的&#xff1a;环境&#xff1a;Windows XP系统软件来源&#xff1a;mysql官网下载1.下载mysql-5.6.15-win32.zip&#xff1b;2.解压MySQL压缩包&#xff1b;以下以加压到“F:\Program Files\Mysql\mysql-5.6.15-win32”为例&#xff1a;3.将解压目录…

jquery treeview 树形插件

jquery treeview 插件参数说明 treeview开源地址&#xff1a;https://github.com/jzaefferer/jquery-treeview 1、animated&#xff1a;String or Number 设置展开子节点时的显示速度&#xff0c;有 slow、normal、fast 或者指定速度值&#xff0c;与 jQuery 的 hide&#xff0…

spark调优(一)-开发调优,数据倾斜,shuffle调优

主要分为开发调优、资源调优、数据倾斜调优、shuffle调优几个部分。 开发调优和资源调优是所有Spark作业都需要注意和遵循的一些基本原则&#xff0c;是高性能Spark作业的基础&#xff1b;数据倾斜调优&#xff0c;主要讲解了一套完整的用来解决Spark作业数据倾斜的解决方案&am…

linux进程间通信:popen函数通过管道与shell通信

函数描述 FILE *popen(const char* command,const char* type) 该函数的执行过程如下&#xff1a; a. 调用pipe创建一个管道&#xff0c;并fork创建一个子进程来执行shell,shell会创建一个子进程来执行commad b. 将父进程的输入输出重定向到管道&#xff0c;建立一个单向的数据…

新的小游戏发布啦。Pop Jungle

丛林爱消除是一款画面清新&#xff0c;效果绚丽的消除类休闲游戏。你只需要选中尽可能多的图块&#xff0c;并消除它们就可以得到高分&#xff0c;并有无限多的关卡等待你去征服。一旦你开始玩儿你将无法停止下来&#xff0c;如果你还是消除星星的粉丝&#xff0c;那你更加不能…

mysql thread safe_Windows环境下完全手工配置Apache、MySQL和PHP(Thread Safe)

happydagui&#xff1a;现在LAMP(Linux、Apache、MySQL、PHP/Perl/Python的简称)已经很流行了。在Windows下也有类似的&#xff0c;比如 WAMP(Apache, MySQL, PHP on Windows)。这篇文章主要是介绍如何在Windows环境下完全手工配置Apache、MySQL和PHP&#xff0c;都是解压后直接…

点滴积累【C#】---检验编号在本表中自动生成,与其他表无关

检验编号在本表中自动生成&#xff0c;与其他表无关 效果&#xff1a; 描述&#xff1a;在本表中自动生成编号&#xff0c;与其他表无关。 调用&#xff1a; 1 protected void Page_Load(object sender, EventArgs e)2 {3 Response.Expires -1;4 …

Alpha冲刺(9/10)

团队信息 队名&#xff1a;爸爸饿了组长博客&#xff1a;here作业博客&#xff1a;here组员情况 组员1&#xff08;组长&#xff09;&#xff1a;王彬 过去两天完成了哪些任务 学习jQuery的AJAX部分的基础知识,对web端如何异步获取服务器信息有了初步认识接下来的计划 & 还…

linux进程通信:pipe实现进程同步

文章目录通过管道同步进程实现代码管道缓冲区设置缓冲区大小总结 &#xff1a;pipe的特点通过管道同步进程 管道自带同步互斥机制&#xff1a; 管道的内核实现&#xff1a;fs/pipe.c &#xff0c;主要通过内核的锁以及等待队列等机制实现 管道的write操作会阻塞进程 当内存缓冲…

(转)MySQL联表查询

资料源于网络 一.内联结、外联结、左联结、右联结的含义及区别在SQL标准中规划的&#xff08;Join&#xff09;联结大致分为下面四种&#xff1a;1.内联结&#xff1a;将两个表中存在联结关系的字段符合联结关系的那些记录形成记录集的联结。2.外联结&#xff1a;分为外左联结和…

极小连通子图和极大连通子图_强连通分量与拓扑排序

前言由于GacUI里面开始多处用上拓扑排序&#xff0c;我决定把之前瞎JB搞出来的算法换掉&#xff0c;换成个正式的。之前我自己弄了个写起来很简单的算法&#xff0c;然后每一处需要用到的地方我就重新做一遍。当然这样肯定也是不行的&#xff0c;我觉得也差不多积累到重构的临界…

INTERVAL数据类型-007学习笔记

http://baggio785.itpub.net/post/31233/286119 INTERVAL数据类型用来存储两个时间戳之间的时间间隔。 可以指定years and months&#xff0c;或者days,hours,minuts,seconds之间的间隔。本文为oracle的学习笔记&#xff0c;结合实例介绍INTERVAL数据类型。 INTERVAL数据类型用…

scrapy模拟用户登录

scrapy框架编写模拟用户登录的三种方式&#xff1a; 方式一&#xff1a;携带cookie登录&#xff0c;携带cookie一般请求的url为登录后的页面&#xff0c;获取cookie信息应在登录后的页面获取&#xff0c;cookie参数应转成字典形式 # -*- coding: utf-8 -*- import re import sc…

linux 系统调用 open函数使用

函数介绍 本文仅仅将open系统调用的使用简单总结一下&#xff0c;关于其实现原理大批的大佬分享可以自行学习。open系统调用主要用于打开或者创建一个文件&#xff0c;并返回文件描述符。 头文件 #include <fcntl.h>函数名称 a. int open(const char *pathname, int fl…

配置zendframework开始工作(加入环境变量)

首先需要把把两个路径加入到环境变量中 1、我用的php环境是xampp&#xff0c;安装在di盘&#xff0c;我要把d:/xampp/php/这个路径加入到环境变量 2、下载zendframework&#xff08;我用的版本是1.&#xff09;,把安装包中的bin目录加入到环境变量 3、关于设置php/php.ini中设置…

mysql计算两gps坐标的距离_mysql 计算两坐标间的距离

mysql 5.6.1 加入了空间数据支持功能&#xff0c;新增了st_*相关函数&#xff0c;可以非常方便的计算两个地理坐标点的距离了。如下例子&#xff1a;按我的坐标计算周边坐标的距离并由近到远排序select name,st_distance(point(113.327955,23.129717),point)*111195 as distanc…

(转)mxArray数据类型

1 、数据类型mxArray的操作 在上节的Matlab引擎函数中&#xff0c;所有与变量有关的数据类型都是mxArray类型。数据结构mxArray以及大量的mx开头的函数&#xff0c;广泛用于Matlab 引擎程序和Matlab C数学库中。mxArray是一种很复杂的数据结构&#xff0c;与Matlab中的array相对…

Bootstrap笔记(记录不会的知识)

head&#xff1a; <link rel"stylesheet" href"bootstrap.min.css" /> 引入bootstrap.min.css文件 <meta name"viewport" content"widthdevice-width,initial-scale1" /> content"widthdevice-width&#xff1a;设为…

linux 系统调用 read,write和lseek 使用

read系统调用 头文件 #include <unistd.h>函数使用 ssize_t read(int fd, void *buf, size_t count) read 函数会从文件描述符fd中读取指定的count长度的内容&#xff0c;并且将读到的结果放入到buf缓冲区中返回值 count 读取成功&#xff0c;则会返回读到的字节数 小于…

简单有趣的matlab小程序_超实用有趣的五个小程序推荐

大家好&#xff0c;我是小胖。废话不多说&#xff0c;进入正题。1.一周CP共读有趣的灵魂总会相遇。一个极简的社交小程序。通过选择自己喜欢的一本书&#xff0c;匹配到那个跟自己有着一样有趣灵魂的TA。选择好要阅读哪本书之后&#xff0c;填写下资料&#xff0c;就能在看一本…

一些linux下的性能监测工具

1.gprof http://blog.csdn.net/stanjiang2010/article/details/5655143 2.系统性能调优 http://www.ibm.com/developerworks/cn/linux/l-time/part2/index.html?cadrs perf http://www.ibm.com/developerworks/cn/linux/l-cn-perf1/ oprofile http://www.ibm.com/developerwor…

uva 10183 How many Fibs?

数学题&#xff1a; 给你一个区间[a,b]在该区间内有多少个费波那列数&#xff08;包括a&#xff0c;b&#xff09;&#xff0c;数据规模达到10^100。 这题的原理很简单&#xff0c;基本没什么算法&#xff0c;其实更偏重于编程能力&#xff0c;需要用到高精度。另外找区间的地方…

2018/11/29 一个64位操作系统的设计与实现 02 (安装nasm)

操作系统: Centos7 在nasm官网上的到通过yum安装nasm的方法 首先在/etc/yum.repos.d/目录下 新建一个名为nasm.repo的文件, 在这么文件中写入内容如下 : [nasm] nameThe Netwide Assembler baseurlhttp://www.nasm.us/pub/nasm/stable/linux/ enabled1 gpgcheck0[nasm-testing]…

a-awk 计算数值最大,最小,平均值并保留指定位数

awk 计算最大值 echo -e "1\n2\n3\n10\n9\n5\n11\n"|awk BEGIN {max 0} {if ($1>max) max$1 } END {print "Max", max} 输出为&#xff1a;Max 11 或者可以使用sort命令更为便捷&#xff1a; cho -e "1\n2\n3\n10\n9\n5\n11\n"|sort -n |tai…

第18章:MYSQL分区

第18章&#xff1a;分区 目录 18.1. MySQL中的分区概述18.2. 分区类型18.2.1. RANGE分区18.2.2. LIST分区18.2.3. HASH分区18.2.4. KEY分区18.2.5. 子分区18.2.6. MySQL分区处理NULL值的方式18.3. 分区管理18.3.1. RANGE和LIST分区的管理18.3.2. HASH和KEY分区的管理18.3.3. 分…

mysql属性配置提高查询_MYSQL性能优化-安装时优化参数配置提高服务性能

MYSQL性能优化一直是个头痛的问题&#xff0c;目前大多都是直接把页面html静态页面或直接使用了缓存技术&#xff0c;下面我就mysql本身的性能优化来分享一下。安装时优化参数配置提高服务性能在Linux下安装Mysql采用默认配置安装的Mysql却未必是工作在最佳性能状态的&#xff…

c++引用的自我见解

2019独角兽企业重金招聘Python工程师标准>>> 刚开始学习c 学完指针后&#xff0c;其细节比较好明白&#xff0c;但学到引用了以后&#xff0c;只知其表却不知其底层的实现机制&#xff0c;虽然知道引用是别名、声明必须同时初始化等等&#xff0c;但这只是概念性的东…