摘要:
看这篇题解 能学到挺多东西的。 首先是容斥原理,我们看到了序列题不超过一半,可以往这上面想,因为一定不会有两种元素同时超过一半 然后就是DP,我们在这种情况下的DP一般都是预处理,但是这道题目是每次都要枚举不合法的列\(col\)进行DP,所以思维不要被限制了 最后是DP的优化。这是我第一次见到通过 阅读全文
摘要:
这道题目看官方解答就好了,写的很好 我其实想到了官方解答的,但是卡在了写代码上。。 我想的是利用双指针迭代,但是分类讨论的情况很多。如果不用循环而用题目说的递归,显然更简单(其实官方题解的代码用的也是队列模拟,当然也比双指针简单) 借鉴一下题解的code吧 注意题目要求输出的是每次插入的位置,想一下 阅读全文
摘要:
我们先来看看简单版本的想法,非常具有启发性 大致的思路见这篇文章 下面是对这篇文章具体操作的阐释 我们先将所有区间按照左端点单调递增排序,并统计每一个区间中\(c_i=1\)的个数(这个直接用前缀和就好了,设\(sum[i][j]\)表示前\(i\)个数中\(c_k=j\)的个数),枚举其中一个区间 阅读全文
摘要:
此题利用转换构造法 首先,我们对两个连通块进行连边的时候,肯定是选择编号最小的点进行连边,所以下文的\(i,j\)都指代编号最小的\(i,j\) 然后我们就没有其他思路了。。但其实样例一的解释给了我们一种猜想:最终的图一定可以长成以\(1\)号点为中心的菊花图(这也算考虑特殊元素了) 要达到这一点, 阅读全文
摘要:
一个比较正常,自然的思路:看这篇题解 像这种全排列的问题,一个很正常的想法就是从小到大进行依次放置(以数为考虑对象),再看一下每次放置的限制是什么(这里至少要满足第二个条件,所以每次放置要么放在最前面的偶数位,要么放在最前面的奇数位) 我自己想的时候,是直接先把所有奇数位的数字取出来,那么显然取了\ 阅读全文
摘要:
看这篇文章 这篇文章讲的证明很好,当然也是反证法的应用 然后卡特兰数的另一种公式也要记住 阅读全文
摘要:
注意识别,是斯特林数 阅读全文
摘要:
方法一 一般遇到完全平方数,我们是可以往配方想的。如果不乘以系数\(4\)直接配方,会出来一个\((x+\frac{a}{2})^2\)的玩意。由于题目没有给出\(a\)的奇偶性,我们为了避免讨论,必须要乘以系数\(4\)(其实那个可以不用\(z\)那个换元,我们直接移动过去利用平方差公式就好了) 阅读全文