上一页 1 ··· 36 37 38 39 40 41 42 43 44 ··· 70 下一页
摘要: F - Cowslip Collections http://codeforces.com/blog/entry/43868 这个题解讲的很好。。。 阅读全文
posted @ 2018-11-04 16:19 NotNight 阅读(207) 评论(0) 推荐(0) 编辑
摘要: E - Intellectual Inquiry 思路:我自己YY了一个算本质不同子序列的方法, 发现和网上都不一样。 我们从每个点出发向其后面第一个a, b, c, d ...连一条边,那么总的不同子序列就是从0号点出发能走出多少条 不同点的路径。 dp[ i ]表示是到 i 这个点的不同路径数, 阅读全文
posted @ 2018-11-04 00:57 NotNight 阅读(112) 评论(0) 推荐(0) 编辑
摘要: F - Group Projects 题目大意:给你n个物品, 每个物品有个权值ai, 把它们分成若干组, 总消耗为每组里的最大值减最小值之和。 问你一共有多少种分组方法。 思路:感觉刚看到的时候的想法是先排好序, dp[ i ][ j ][ k ]表示已经划分了 i 个, 并且分成了 j 组, 目 阅读全文
posted @ 2018-11-03 20:40 NotNight 阅读(142) 评论(0) 推荐(0) 编辑
摘要: E - Three strings 将三个串加进去,看每个节点在三个串中分别出现了多少次。 阅读全文
posted @ 2018-11-02 19:01 NotNight 阅读(157) 评论(0) 推荐(0) 编辑
摘要: F - Permutation 思路:对于当前的值x, 只需要知道x + k, x - k这两个值是否出现在其左右两侧,又因为每个值只有一个, 所以可以转换成,x+k, x-k在到x所在位置的时候是否都出现,或者都不出现,即出现情况相等,我们可以 用线段树维护hash值的方式来判断所有x+k, x- 阅读全文
posted @ 2018-11-02 12:53 NotNight 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 思路:dp[ i ][ 0 ]表示第一个是山谷的方案,dp[ i ][ 1 ]表示第一个是山峰的方案, 我们算dp[ x ][ state ]的时候枚举 x 的位置 x 肯定是山峰, 然后就用组合数算方案就好啦。 卡空间 模数是1e9 不是 109 巨坑。 阅读全文
posted @ 2018-11-01 20:52 NotNight 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 思路:如果只有一棵树这个问题很好解决,dp一次,然后再dfs一次往下压求答案就好啦,带环的话,考虑到环上的点不是 很多,可以暴力处理出环上的信息,然后最后一次dfs往下压求答案就好啦。细节比较多。 阅读全文
posted @ 2018-10-26 12:35 NotNight 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 思路:二分之后用dp去check就好啦。 阅读全文
posted @ 2018-10-24 00:33 NotNight 阅读(176) 评论(0) 推荐(0) 编辑
摘要: #include #define LL long long #define fi first #define se second #define mk make_pair #define PII pair #define PLI pair #define ull unsigned long long using namespace std; const int N = 2e6 + 7; con... 阅读全文
posted @ 2018-10-21 19:40 NotNight 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 思路:重点在于叶子节点只有20个,我们把叶子节点提到根,把20个trie图插入后缀自动机,然后就是算有多少个本质不同的字串。 阅读全文
posted @ 2018-10-21 16:21 NotNight 阅读(103) 评论(0) 推荐(0) 编辑
上一页 1 ··· 36 37 38 39 40 41 42 43 44 ··· 70 下一页