隔板法求解不定方程的解的个数

文章目录

  • 隔板法求解不定方程的解的个数
    • 1、求正整数解的个数——普通隔板法
    • 2、求非负整数解的个数——添加元素隔板法

1、求正整数解的个数——普通隔板法

将不定方程想象成解决小球的问题:5个小球排成一排,中间形成4个空隙,将两个隔板插入到这4个空隙中,使5个小球被分为3部分:


注: 因为要求是正整数,所以每空至多插入一块隔板,否则球被分为2部分,意味着存在为0的解,不符合“正整数”的限制
隔板分割的球数则代表了x1,x2,x3对应的值,解的个数为:C(4,2)=6个

2、求非负整数解的个数——添加元素隔板法

当限制条件变为非负整数时,意味着解的值是可以为0的,代表这在之前求解正整数时“至多一块隔板”的情况在这里就不成立了。
但如果给x1,x2,x3分别+1小球,之前的方法是不是又成立了?
方程转化为:
(x1+1)+(x2+1)+(x3+1)=5+1+1+1=8
那么隔板法就变成将8个小球分为3个部分,如下图所示:

则非负整数解的个数,对应着用2块隔板将8个小球分为3部分的情况,或者理解为将8个相同小球放入3个不同的盒子里,每个盒子不能为空。
最后计算结果:C(a+b-1,b-1)=C(7,2)=21

隔板法求解不定方程x1+x2+x3=5解的个数相关推荐

  1. 如何利用扩展欧几里得算法求解不定方程_欧几里德算法、拓展欧几里德、中国剩余定理...

    01.欧几里德算法(Euclidean algorithm)(辗转相除法) 欧几里德算法又称辗转相除法,主要是用于计算两个整数a,b的最大公约数. 简单点说一下算法原理:两个整数的最大公约数等于其中小 ...

  2. 【高等数学笔记】f(x)=(x-1)(x-2)²(x-3)³(x-4)⁴的拐点是?

    前置知识: 定理(Leibniz公式) 设 u = u ( x ) u=u(x) u=u(x), v = v ( x ) v=v(x) v=v(x)都是 n n n阶可导的,则 ( u v ) ( n ...

  3. Matlab三元隐函数求极值,matlab用三重循环求一个三元函数的最大值所对应的x1,x2,x3...

    用MATLAB实现for循环 t=2;whileS(t)>Pstrong&&t 求一个MATLAB循环语句表示这个矩阵200分 这样的,i和j是内部虚数变量,避免轻易使用.cle ...

  4. php生成迷宫图片,PHP实现基于回溯法求解迷宫问题的方法详解

    本文实例讲述了PHP实现基于回溯法求解迷宫问题的方法.分享给大家供大家参考,具体如下: 引言 最近在leetcode上看了些算法题,有些看着很简单的很常用的东西,竟然一下子想不出来怎么求解,比如说:实 ...

  5. c语言x1 x2 x3 x4的程序,求s=1x2x3+2x3x4+3x4x5+…+18x19x20的c语言程式怎么写

    求s=1x2x3+2x3x4+3x4x5+-+18x19x20的c语言程式怎么写以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一 ...

  6. 如何利用扩展欧几里得算法求解不定方程_客户端不用的算法系列:从头条笔试题认识扩展欧几里得算法...

    难度较高,阅读时间大概 28 分钟 这是数论的第二篇,在<素数筛法>中,我们重温了素数这个数学定义,并且给出了区别于教科书上更高效的 Eratosthenes 筛法和欧拉线性筛.这篇文会从 ...

  7. matlab 二次不等式约束,请教高手如何用matlab解多元二次不等式的解,有三个未知数x1,x2,x3,约束条件如下:...

    共回答了15个问题采纳率:86.7% 楼上正解无错 再给一种不同的形式 function zd0323 format long%改变格式,使更精确输出结果 %% 目标函数 function y=fun ...

  8. 7-45 循环结构7:求x+x2+x3+...+xn的值 (50 分) 输入整数x,n(x与n均为1到8之间的整数),输出x1+x2+x3+...+xn(第二个数字表示指数)的值,不能使用pow函数

    #include<stdio.h> int main() {int x,n,t=1;int s=0;int i,j;scanf("%d%d",&x,&n ...

  9. 计算不定方程解的个数的方法汇总

    写在前面 最近做了一些题目, 才发现当初学习组合数学时候还是做的题太少, 很多东西只是知道其概念如何, 真正上手题目还是get不到精髓. 这次来总结一下计算不定方程解的个数的一些方法, 加深一下对这块 ...

最新文章

  1. c语言程序段的流程图怎么画,大家帮我看看这个程序的流程图怎么画,谢了
  2. 程序员们有福了:独立于GUI的Java应用框架 Reflex 诞生了!
  3. C语言实例第4期:交换数组中最大数和最小数的位置
  4. 为什么磁盘存储引擎用 b+树来作为索引结构?
  5. linux 函数学习--kzalloc()
  6. oracle用户获取datameta权限,Oracle数据库提权(低权限提升至dba)
  7. java中的STL库_C++11 STL线程库实现一个简单的线程池
  8. html placeholder 兼容问题,解决placeholder的兼容性
  9. golang 时间戳_go语言学习笔记(13)-defer函数、字符串常用函数和时间日期函数...
  10. Linux运维六:用户管理及用户权限设置
  11. 100 个网络基础知识 看完成半个网络高手
  12. mp2551总线收发器芯片作用_什么是现场总线,为什么需要隔离处理?
  13. poj3259 Wormholes floyd求负环
  14. saltstack自定义returner之利用fluent+mysql进行结果收集
  15. 短进程优先的调度算法详解
  16. 工厂生产管理流程有哪些环节?
  17. javaweb技术及应用QST
  18. 2016-05-20-信息系统实践手记7-对接卡口平台细节
  19. 世人爱情短命的原因分析
  20. [原创].菜农M0助学板PDMA读取ADC样本小练(寄存器操作方式)

热门文章

  1. 新浪云绑定独立域名教程
  2. Linux目录与文件的管理
  3. python except作用_python except 用法
  4. 打工人必学的法律知识(四)——《中华人民共和国劳动法》
  5. mysql表结构生成工具——mysql_markdown
  6. 太赞了!实战讲述Flutter跨平台框架应用,挥泪整理面经
  7. php 报错:A non-numeric value encountered
  8. 电子制造业如何实现客户优选,提升盈利能力?
  9. JAVA使用es不分词_谈谈 Elasticsearch 分词和自定义分词
  10. 秋招指南(菜狗版)-Java前/后端开发方向