依旧是组合数问题

  • 先来看一道题

如图,一个n*m的方格中,从原点开始,每次只能向上走或者向右走,求走到点(n,m)共有多少种走法

一般做法:

一个一个写,每一个节点的种数=它左边的数量+右边的数量

显然可以DP做

但我们不用DP做(滑稽

组合数:  ans=C(n+m,n)

原因:一共要走n+m步,从中选出n步向右走的,即为答案(C(n+m,m)也是一样滴)

  • 经典题:问从(0,0)走到(n,m)且不穿过直线y=x的方案数,如图

总的方案减去不合法的方案
对称过去
一定经过(1,0)
 

洛谷P4369

好吧其实这个题简单的一批.....

话说每一个1都可以写成C(n,0)d的形式.....

这下知道怎么做了吧

•1+1+1+1+...+1+(x-k+1)
•C(1  ,0)+c(2,0)+...
 
 
 
直接比较组合数是n!的复杂度,显然会tle,而且也不好算,我们可以转而比较log的大小

•求n!前缀和
•比较log
 

•两边展开,系数杨辉三角
 

一个神奇的结论:

结合转移矩阵

放一篇自己写的题解(用杨辉三角做的)

然后我们来看另一种解法

Lucas定理

P为素数,则有

就是这样:

注:这里是将n,m转化为p进制

再来看这道题:

•因为C(n,m)是p的倍数,而C(ni,mi)中并不含有p,所以某一位有ni<mi使得它=0(这里原题是i,j,由于下标重复就用n和m了)
 容斥原理
已知∩的大小,求∪的大小
 

就是这样的

•170+130+120-45-20-22+3
 维恩图

•μ:数论函数的容斥系数

 
总的方案数减去有一个人不符合的方案数加上有两个人不符合的方案数以此类推
 

不考虑其他,n个人围成圈坐有(n-1)!种方案

总结来了!

也是容斥原理

•不能打羽毛球的情况有:
•球  >=0      >=1      =0       
•拍   =0       =1        > =1 
   

结合起来就好了

 

Day 3 下午的更多相关文章

  1. 搞了我一下午竟然是web.config少写了一个点

    Safari手机版居然有个这么愚蠢的bug,浪费了我整个下午,使尽浑身解数,国内国外网站搜索解决方案,每一行代码读了又想想了又读如此不知道多少遍,想破脑袋也想不通到底哪里出了问题,结果竟然是web.c ...

  2. System.DateUtils 3. IsPM、IsAM 判断是否为上、下午

    编译版本:Delphi XE7 function IsPM(const AValue: TDateTime): Boolean; inline;function IsAM(const AValue: ...

  3. 用一个下午从零开始搭建一个基础lbs查询服务

    背景 现在做一个sns如果没有附近的功能,那就是残缺的.网上也有很多现成的lbs服务,封装的很完整了. 我首先用了下百度lbs云,但是有点不适合自己的需要,因此考虑用mongodb建一个简单的lbs服 ...

  4. 新蒂下午茶体基本版SentyTEA-Basic

    一.目前的最新版新蒂下午茶体包含了7600+常用汉字,每个字都是手写而成,是一套充满手写感的中文字体,轻松.惬意,如同慢饮一杯下午茶.SentyTEA-Basic.ttf  这个一个新蒂下午茶体基本版 ...

  5. JAVA判断当前时间是上午am还是下午pm

    //结果为"0"是上午 结果为"1"是下午 public class GregorianTest { public static void main(Strin ...

  6. PKUSC 模拟赛 day2 下午总结

    终于考完了,下午身体状况很不好,看来要锻炼身体了,不然以后ACM没准比赛到一半我就挂掉了 下午差点AK,有一道很简单的题我看错题面了所以没有A掉 第一题显然是非常丝薄的题目 我们很容易通过DP来O(n ...

  7. PKUSC 模拟赛 day1 下午总结

    下午到了机房之后又困又饿,还要被强行摁着看英文题,简直差评 第一题是NOIP模拟赛的原题,随便模拟就好啦 本人模拟功力太渣不小心打错了个变量,居然调了40多分钟QAQ #include<cstd ...

  8. CTO俱乐部下午茶:技术团队管理中的那些事儿

    摘要:"CTO下午茶"是一种有效的集体对话的模式,参加活动的成员在真诚互动和共同学习的宗旨下齐聚一堂,在喝茶聊天氛围下交流工作心得.本期"CTO下午茶"的主题是 ...

  9. 6月27日CTO俱乐部下午茶印象

    作者:朱金灿 来源:http://blog.csdn.net/clever101 感谢CSDN的邀请,有幸参加了6月27日“CTO俱乐部下午茶时光:CTO在团队管理中所遇到的那些事”活动.本期的主讲嘉 ...

  10. 写了一下午的dijkstra。突然发现我写的根本不是dijkstra。。。。是没优化过的BFS.......

    写了一下午的dijkstra.突然发现我写的根本不是dijkstra....是没优化过的BFS.......

随机推荐

  1. #WEB安全基础 : HTML/CSS | 0x7HTML5和W3C验证

    标准,标准,什么都有标准 你听说过HTML5吗?这是一个新版本,当然也有新标准 我只准备了一个index.html文件 以下是代码 <!DOCTYPE html> <!--告诉浏览器 ...

  2. PJSUA2开发文档--第四章 端点ENDPOINT

    4.端点ENDPOINT Endpoint类是一个单例类,应用程序必须在此类实例之前创建一个并且最多只能创建一个,然后才能执行任何操作.同样,一旦这个类被销毁,应用程序就不能调用该库的任何API.这个 ...

  3. CGI 、FastCGI、PHP-CGI、PHP-FPM 定义以及与nginx的应用关系

    CGI common gateway interface,简称cgi,简而言之就是一个接口,一种协议.它的作用就是帮助服务器与语言通信. 这里以nginx和php为例,因为nginx和php的语言不通 ...

  4. sqlbulkcopy 批量插入数据

    批量插入 Datetable数据  通过sqlbulkcopy 插入1百万条数据 用时 10秒钟 (有兴趣的小伙伴可以去测试) /// <summary> /// /// </sum ...

  5. new 和 newInstance 的区别

    初始化一个类,生成一个实例的时候:newInstance() 和 new 有什么区别? 用newInstance与用new是区别的,区别在于创建对象的方式不一样,前者是使用类加载机制,那么为什么会有两 ...

  6. SQLServer之修改UNIQUE约束

    使用SSMS数据库管理工具修改UNIQUE约束 1.连接数据库,选择数据表->右键点击->选择设计(或者展开键,选择要修改的键,右键点击,选择修改,后面步骤相同). 2.选择要修改的数据列 ...

  7. Nginx 配置 https

    从云服务提供商处申请证书 申请 https 证书教程-百度经验 申请下来的证书目录结构 . ├── Apache │   ├── 1_root_bundle.crt │   ├── 2_website ...

  8. #018 C语言刷题 素数问题

    今天做题学会了一个求素数的方法 总分 13 孪生素数 相差为2的两个素数称为孪生素数.例如,3与5,41与43等都是孪生素数.设计程序求出指定区间上的所有孪生素数对.区间上限和下限由键盘获取. 程序运 ...

  9. 【English】20190312

    tokens记号 [ˈtoʊkən]   delimiter characters分隔符字符 [dɪ'lɪmɪtə]  [ˈkærɪktɚs]    argument论据主题[ˈɑ:rgjumənt] ...

  10. Docker 镜像仓库

    仓库 仓库(Repository)是集中存放镜像的地方. 一个容易混淆的概念是注册服务器(Registry).实际上注册服务器是管理仓库的具体服务器,每个服务器上可以有多个仓库,而每个仓库下面有多个镜 ...