10 2021 档案

摘要:01背P1048 完背P1616 一区P1880 二区P2858 树DFS DijP4779 PrimP3366 KruscalP3366 TarjanP2863 倍增LCAP3379 树状数组1 树状数组2 SegTree TrieP2580 CartesianTreeP5854 FHQTreap 阅读全文
posted @ 2021-10-23 10:25 1358id 阅读(33) 评论(0) 推荐(0) 编辑
摘要:未开 long long. 线段树先调用 build(). (两次了) 分块修改是 rep(i, l + 1, r - 1) 博客园的表格万万不能用. 笛卡尔树建树时,当前节点不在栈内. DFS记得return 1和i不要搞混(实在不行就换个变量名,好调) 数组压维度时,要保证它不越界 匈牙利算法连 阅读全文
posted @ 2021-10-22 19:49 1358id 阅读(39) 评论(0) 推荐(0) 编辑
摘要:题面 状压DP。 看到这个 n18 ,立刻想到状压DP。 考虑转移方程,一个状态可以由两个子状态转移而来,所以 fi=fij+fj 。 如果 ijj 这两个状态可以合并,那么等于说是 i 这个状态本身是个完全图。那么我们判断一下这个 阅读全文
posted @ 2021-10-20 19:49 1358id 阅读(82) 评论(0) 推荐(0) 编辑
摘要:题面 题意:有一堆硬币,其中金币,银币,铜币的个数分别为 A,B,C ,每次在这堆硬币中随机挑选一枚,放两个同样的硬币进去。求存在一种硬币使得这种硬币个数超过 100 的期望操作次数。 概率DP。 这道题目应当用倒推的方法,因为初始状态是 \(f_{100,j,k}=f_{i,100 阅读全文
posted @ 2021-10-10 08:47 1358id 阅读(74) 评论(0) 推荐(0) 编辑
摘要:题面 题意:有 n 个物品,你可以选择若干个物品,使他们的价值之和 t ,求他们价值之和的最大值。 n40,t109 。 首先看到这个 n 非常小,但是暴力的 O(2n) 跑不过去。 这是我们就要想双端搜索。双端搜索的主要 阅读全文
posted @ 2021-10-10 08:33 1358id 阅读(58) 评论(1) 推荐(0) 编辑
摘要:题面 他就是说有 m 个数在他的位置上, nm 个数不在他的位置上。 那么那 m 个数是任意的,所以共有 (mn) 种组合方法,剩下的数可以发现是一个错位排序。 所以答案就是 (mn)×dnm 。组合数 阅读全文
posted @ 2021-10-09 20:27 1358id 阅读(36) 评论(0) 推荐(0) 编辑
摘要:T1 Statement 表达式的计算 数学表达式求值:输入由数字、'+'、'-'、'*'、'/'、乘方'^'、小括号组成的字符串,输出运算结果 Solution 非常裸的一个题目。 首先把算式读进来,先用一个栈将其转化成后缀表达式,然后求值即可。 T2 阅读全文
posted @ 2021-10-09 20:18 1358id 阅读(46) 评论(0) 推荐(0) 编辑
摘要:题面 树形DP。 首先可以发现, m>2 时,难受度只出现在最大的头吃的果子上(因为我把果子分成最大的头吃的和其他的,其他的里面,相邻的果子让不同的头吃即可)。 然后我定义 fi,j,k 为当前为 i 节点,当前节点分 j 个果子给最大的头,当前节点选择情况为 阅读全文
posted @ 2021-10-09 20:15 1358id 阅读(60) 评论(0) 推荐(0) 编辑
摘要:题面 把这些数分成 k+1 组,每组做完以后清零。 那么首先易证每一组里面一定是严格不增的,所以我们先要考虑给整个数组从大到小排序。 然后怎么去考虑当前的数扔到哪个组中呢?我们用贪心的想法,每次插入都让这次插入得到的答案最大,那么因为插入这个数所得到的答案和我插什么数没有关系,所以我每次都取 阅读全文
posted @ 2021-10-06 19:37 1358id 阅读(36) 评论(0) 推荐(0) 编辑
摘要:题面 首先这 n 个数是互相独立的,所以我们不需要统一的去考虑,只需要考虑其中一个数即可。 我们以 k=5 的情况举例。 我设 fi 为最后一行只填前 i 个点的情况数, gik=i 时总共的情况数。 显然, f0 就是 \(g_{ 阅读全文
posted @ 2021-10-04 08:50 1358id 阅读(98) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示