赞
踩
先备知识
LGV 算法 (Lindström–Gessel–Viennot lemma)
求
求以上矩阵的行列式,其中 e(a,b) 是a-b的方法数,带入就能求(a1,a2,…an) - (b1,b2,…bn) 的所有不相交路径的种数
考虑01和12的分界线
是(n, 0)到(0,m)的两条不相交(可重合)路径
分界线以及分界线以上的点是一种,分界线下是一种
平移其中一条变成(n-1, -1)到(-1,m-1);
变成(注意下面图片有个m-1写成n-1了,懒癌不想改了)
起点
终点
做法 2 http://oeis.org/(网络赛)
仔细找规律
原题地址https://codeforces.com/problemset/problem/348/D
关于LGV的博客
https://www.cnblogs.com/jszkc/p/7309468.html
http://www.cnblogs.com/joyouth/p/5607781.html
把构造的邻接矩阵变成图结构,通过观察规律递推求出公式
把矩阵和图联系起来(双向)
对邻接矩阵以及题目特殊要求的敏感性
http://oeis.org/(网络赛)
1 概率论期望的求解
题意: 有m个灯,n个开关,每一个开关都可以控制多个灯反转
用一个n*m
用f(S) 表示用S这种方法最后灯还亮着的的个数
求
所以问题转变成了求任意
也即对于n*m矩阵的每一个列,任意选三个列,每一列异或和都为零的概率和。
根据线性代数秩的定义,先求出这个n*3矩阵的秩r,那么最后
所以我们求出秩为0,1,3,4的个数,最后求和。
2. 参考代码 C.cpp
- 看清楚数据范围
- 根据榜单判断当前思路是否有问题,是否有更简单或者暴力试一发
- 遇到新的概念不要慌,仔细审题
- ————————
- 具体思路:
暴力枚举所有可能的ϕ() 函数的所有情况n! 种情况,然后判断每一种情况是否能和G2图吻合,最重要的排除G1的自同构
1 什么是拉格朗日多项式
大神博客
我的总结拉格朗日多项式及其应用
2 拉格朗日模板+ 本题代码
后缀数组
题意:求一个字符串求所有不同构子串的个数,字符串仅有a,b,c
分析:比较本题与上一题,发现多了一个同构的限制,本字符串内的子串可能有同构的情况,首先想到的方法是除去同构,发现比较难实现,反其道而行之,枚举所有的同构情况,然后除以同构函数的个数6,就可以求出答案,注意特判单个字符的同构。
题意:
求1-l,r-n这连个段中间不同数的个数
分析:
树状数组的运用:将数组加倍,然后求区间(r,l+n)不同数
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。