zoukankan      html  css  js  c++  java
  • 基本计数方法

    计数方法包括加法原理和乘法原理。
    乘法原理是加法原理的特殊情况,加法原理在分类有重复的情况下,可以使用容斥原

    理。
    加法原理:做一件事有n个方法,第i个方法有pi种方案,则一共有p1+p2+……+pn种

    方案。
    乘法原理:做一件事有n个方法,第i个步骤有pi种方案,则一共有p1p2……pn种方案


    几个常见的计数问题。
    组合排列:
    性质一:C(n ,0)=C(n ,n)=1
    性质二:C(n ,k)=C(n ,n-k)
    性质三:C(n , k)+C(n ,k+1) =C (n+1,k+1)
    性质四:C(n ,k+1)=C(n ,k)*(n-k)/(k+1)
    有重复元素的全排列:n1!n2!……nk!x=n!
    可重复选择的组合:设第i个元素选xi个,问题转化为x1+x2+……+xn=k的非负整数解

    的个数,即C(k+n-1,n-1)=C(n+k-1,k).

    例题一:UVa 11538
    从行,列,对角线三个方向考虑,行为n*m*(m-1),列为m*n*(n-1);对角线长度1-

    >N->1,中间有(m-n+1)个n(假设n<=m),从而可推导出对角线上的公式为2*n*(n-

    1)*(3*m-n-1)/3.

    例题二:UVa 11401
    运用加法原理,设最大边长为x,y+z>x => x-y<z<x.由此可发现规律y=1,无解;y=2,

    有一解(z=x-1);y=3,有二解(z=x-1),(z=x-2);直到y=x-1有x-2个解。

    例题三:UVa 11806
    本题要用到容斥原理,将第一行,最后一行,第一列,最后一列,看做四个集合,通过求交集得出最后结果。

  • 相关阅读:
    tomcat-01-配置文件组成
    Mysql的批量导入
    Mysql优化
    没有处理的问题
    Java 实现一个带提醒的定时器
    Java 端口扫描器 TCP的实现方法
    Java 多态方法构造器执行方法
    JavaWeb 基于Session的用户登陆注销实现
    Java 访问权限控制 小结
    Java FTP下载文件以及编码问题小结
  • 原文地址:https://www.cnblogs.com/Acgsws/p/3161730.html
Copyright © 2011-2022 走看看