摘要: 这个题的意识是给你一个长度为n的序列, 序列只包含小写字母, 问你每个字母最多重复出现三次的方案数是多少?我们可以使用f[n]表示长度为n的方案数, 那么f[n] = 25*(fn-1 + fn-2 + fn-3) , 代码如下:   阅读全文
posted @ 2016-03-12 22:54 xing-xing 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 这道题的意思是问你一个矩形形能分成几个正方形, 可以联系gcd的求解过程, 一个n*m的矩形可以被划分成n*(m%n)的小矩形。。 代码如下:   阅读全文
posted @ 2016-03-12 22:44 xing-xing 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 这个题就是给你一个只含有0和1的矩阵, 问你能否通过行列交换使得对角线上的元素全为1, 首先需要注意的是我们仅通过行交换或者列交换就可以使得矩阵满足条件, 然后我们将行和列看成点, 矩阵中1的元素看成边, 建立一个有向图, 求出行列的最大匹配数,即可。。代码如下:   阅读全文
posted @ 2016-03-12 22:26 xing-xing 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 这个题的意思是初始给你N个砖块, 维护两个操作, M a, b表示将含有a的堆放到b堆得上面(a和b在同一堆得话那么就忽略此操作, 有种并查集的感觉), C a查询a下面有几个砖块, 其实我们可以使用带权的并查集来维护这个题, 增加两个变量under[i]表示i下面有几个装快, cnt[i]表示以i 阅读全文
posted @ 2016-03-12 10:09 xing-xing 阅读(139) 评论(0) 推荐(0) 编辑