- 博客(6)
- 资源 (3)
- 收藏
- 关注
原创 BestCoder #92 C (dp)(要学会表示状态啊)
题目链接以下几段摘自官方题解:大家要学会分析状态啊喂!多思考多开脑洞,分析出状态之后,就是一个DP或者记忆化搜索,自然就可以写出来啦!首先,因为字符不是'2'就是'3',所以我们可以把字符串当做一个全部都是'3'的串,然后有若干的'2'插入到了某些位置。显然,我们交换相邻的'2'与'2'或者相邻的'3'与'3'是没有意义的,我们只会进行相邻'2'与'3'之间的交换。
2017-04-16 15:10:42 300
转载 Sublime插件及配置
Sublime插件及配置增强型插件Package Control快捷键ctrl+~,调出命令行,运行:import urllib.request,os,hashlib; h = '2915d1851351e5ee549c20394736b442' + '8bc59f460fa1548d1514676163dafc88'; pf = 'Package Control.su
2017-04-03 12:51:54 1557
原创 codeforce Round #404 D(数学,思路,范德蒙恒等式)
题目链接题意: 问你一共有多少个子串,满足下列条件: ①长度为偶数 ②前一半是( ③后一半是) ④子串不必要连续。 题解:我们O(n)枚举分界线,那么对应左侧有n个(,右边有m个) 则答案为C(i,n)*C(i,m)。而由范德蒙不等式可得结果。PS:求组合数时可以先将所有阶乘都预处理出来,在直接求即可代码如下:#include #inclu
2017-04-02 14:25:51 689
转载 树状数组求逆序对(要离散化)
给定n个数,要求这些数构成的逆序对的个数。除了用归并排序来求逆序对个数,还可以使用树状数组来求解。树状数组求解的思路:开一个能大小为这些数的最大值的树状数组,并全部置0。从头到尾读入这些数,每读入一个数就更新树状数组,查看它前面比它小的已出现过的有多少个数sum,然后用当前位置减去该sum,就可以得到当前数导致的逆序对数了。把所有的加起来就是总的逆序对数。题目中的数都是独一无二的,这些数最
2017-04-02 14:15:43 380
转载 范德蒙恒等式的证明
今天我们来认识组合数学中一个重要的恒等式---范德蒙恒等式。这个恒等式的表述如下 很自然的公式,接下来一起来看看它的证明,在维基百科上给出了两种方法证明,分别如下 (1)组合方法证明 甲班有个同学,乙班有个同学,从两个班中选出个一共有种不同的选法。而换一种思维方式 从甲班中选取个
2017-04-02 11:13:13 652
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人