当前位置: 首页 > news >正文

航电春季赛(七)1010 网格计数

在这里插入图片描述
我们把选出来的点看成一个 2 × n 2\times n 2×n的格子,第一行填行号,第二行填列号。
那么可以将题意转化为: 2 × n 2\times n 2×n的格子,每个格子填 1 m 1~m 1 m,要求每个格子比其上面和左边更大。

考虑每个格子的选择,观察其所处在的L字形,也就是这个格子和其上面的格子和右边的格子所组成的集合,这些格子的数都不相同,并且该格子大于其上面的,小于其右边的,有明确的排名。

我们先找到满足每个L形里面所有数都不同的方法,然后再排除掉大小关系不正确的情况。

对于前者,我们从依次对 ( 1 , n ) , ( 2 , n ) , ( 1 , n − 1 ) , ( 2 , n − 1 ) , . . . , ( 1 , 1 ) , ( 2 , 1 ) (1,n),(2,n),(1,n-1),(2,n-1),...,(1,1),(2,1) (1,n),(2,n),(1,n1),(2,n1),...,(1,1),(2,1)进行填数,产生的方案数为
∏ 1 ≤ i ≤ 2 , 1 ≤ j ≤ n ( m − ( i − 1 ) − ( n − j ) ) = m ! ( m − n ) ! × ( m − 1 ) ! ( m − n − 1 ) ! \prod_{1\le i \le 2, 1 \le j \le n}(m-(i-1)-(n-j))=\frac{m!}{(m-n)!}\times \frac{(m-1)!}{(m-n-1)!} 1i2,1jn(m(i1)(nj))=(mn)!m!×(mn1)!(m1)!

然后考虑后者,依次从 ( 2 , 1 ) , ( 1 , 1 ) , ( 2 , 2 ) , ( 1 , 2 ) , . . . , ( 2 , n ) , ( 1 , n ) (2,1),(1,1),(2,2),(1,2),...,(2,n),(1,n) (2,1),(1,1),(2,2),(1,2),...,(2,n),(1,n)删除掉不合法的情况,对于当前格子 ( i , j ) (i,j) (i,j),因为其所在的L形仍然保持无序,也就是每个数字本质上都是相同的,有 1 ∣ L ∣ \frac{1}{|L|} L1的情况是合法的,即刚好满足当前格子的数大于上面,小于右边,因此总共需要乘上
∏ 1 ≤ i ≤ 2 , 1 ≤ j ≤ n 1 i + ( n − j ) = 1 n ! × ( n + 1 ) ! \prod_{1\le i \le 2, 1 \le j \le n}\frac{1}{i+(n-j)}=\frac{1}{n!\times (n+1)!} 1i2,1jni+(nj)1=n!×(n+1)!1

因此总共为

m ! ( m − n ) ! × ( m − 1 ) ! ( m − n − 1 ) ! × 1 n ! × ( n + 1 ) ! \frac{m!}{(m-n)!}\times \frac{(m-1)!}{(m-n-1)!}\times \frac{1}{n!\times (n+1)!} (mn)!m!×(mn1)!(m1)!×n!×(n+1)!1
= m ! ( m − n ) ! × n ! × ( m − 1 ) ! ( m − n − 1 ) ! × n ! × n ! ( n + 1 ) ! =\frac{m!}{(m-n)!\times n!}\times \frac{(m-1)!}{(m-n-1)!\times n!}\times \frac{n!}{(n+1)!} =(mn)!×n!m!×(mn1)!×n!(m1)!×(n+1)!n!
= C m n C m − 1 n 1 n + 1 =C_m^nC_{m-1}^n\frac{1}{n+1} =CmnCm1nn+11

http://www.xdnf.cn/news/38197.html

相关文章:

  • python(八)-数据类型转换
  • 【C++算法】66.栈_比较含退格的字符串
  • linux软件仓库
  • 【AIVS】OPENAIVS开源视频推理系统简介
  • 【内置函数】84个Python内置函数全整理
  • 嘉立创原理图、PCB常见问题
  • 8.5/Q1,Charls最新文章解读
  • JavaScript 变量命名规范
  • LeetCode 2563.统计公平数对的数目:排序 + 二分查找
  • 行为审计软件:企业合规与内部监控的数字守门人
  • 硬件工程师面试常见问题(3)
  • Linux下使用C++获取硬件信息
  • Spring Cloud CircuitBreaker服务熔断+隔离+限流
  • 【解决】torch引入过程中的ImportError: __nvJitLinkAddData_12_1, version libnvJitLink.so.12
  • 编程技能:调试04,逐语句命令
  • 08-DevOps-向Harbor上传自定义镜像
  • 【数字IC进阶】整数除3和模3的高效实现
  • 网络开发基础(游戏方向)之 概念名词
  • ESP32-S3上跑通红外重复码发送(7)
  • Linux cmp 命令使用详解
  • SQL注入绕过一些过滤的方式
  • 【数据结构】_栈和队列相关面试题
  • Photoshop安装与配置--简单攻略版
  • 数字化转型四步走:企业的进化密码
  • 新手记录--从零开始[labelme安装及使用]
  • springAi---智能客服
  • 微信、抖音、小红书emoji符号大全
  • Step文件无法编辑怎么办?
  • 案例驱动的 IT 团队管理:创新与突破之路:第六章 组织进化:从案例沉淀到管理体系-6.1 案例库建设方法论-6.1.1结构化案例采集模板
  • 220V转5V转12V电机驱动供电WT5105