随笔分类 - 算法----------
摘要:题目链接:Here ABC水题, D. Not Divisible 看了题解才想到,可以用 Sieve of Eratosthenes,因为 \(A_i\) 最大才 \(10^6\) 但有注意的点 1 1 5 2 2 2 3 3 5 2 2 2 4 4 5 1 1 1 1 2 重复出现的数字 简单的
        阅读全文
                
摘要:本次 5 道题均来自Codeforce 关于树形DP的算法讲解:Here 791D. Bear and Tree Jumps 如果小熊每次能跳跃的距离为1,那么问题变为求树上任意两点之间距离之和。 对于每一条边sum1和sum2分别表示边的左右点数,ans=各边的sum1*sum2之和即为答案。 而
        阅读全文
                
摘要:自从多校后心憔悴啊,发现DP还是太水了,有一场的区间DP竟然不会做,咳,果然是赤裸裸的水军。 花了几天时间写了几道区间DP的题目,大部分都是水题,然后和以前的合并起来就是KB区间DP这个8 + 1道题的专辑,大家可以试着AK。 区间DP是一类在区间上进行动态规划的最优问题,一般是根据问题设出一个表示
        阅读全文
                
摘要:题目链接:Here 题意: 给定 $n$ 个点的坐标,先问这些点能否组成一个凸包,如是凸包,问用不相交的线来切这个凸包使得凸包只由三角形组成,根据 $cost_{i, j} = |x_i + x_j| * |y_i + y_j| % p$算切线的费用,问最少的切割费用。 解题思路:参考于
        阅读全文
                
摘要:前置知识:分块。 朴素的打表,指的是在比赛时把所有可能的输入对应的答案都计算出来并保存下来,然后在代码里开个数组把答案放里面,直接输出即可。 注意这个技巧只适用于输入的值域不大(如,输入只有一个数,而且范围很小)的问题,否则可能会导致代码过长、MLE、打表需要的时间过长等问题。 Sample Des
        阅读全文
                
摘要:问题链接:Here 长度为 \(N\) 的数列 \(A_1,…,A_N\) 。回答满足以下条件的长度 \(N\) 的数列 \(X_1,…,X_N\) 的个数除以 \(998244353\) 的余数。 \(1\le X_i \le A_i\) \(X_i \not = X_{i + 1}\) \(2\
        阅读全文
                
摘要:前言本文转载自 OI wiki,感谢社区的转载支持和其他方面的支持 简介 其实,分块是一种思想,而不是一种数据结构。 在 XCPC 的各个比赛中,各种难度的分块思想都有出现。 分块的基本思想是,通过对原数据的适当划分,并在划分后的每一个块上预处理部分信息,从而较一般的暴力算法取得更优的时间复杂度。 
        阅读全文
                
摘要:这题直接贪心显然不可行. 考虑树形dp,用 \(f_i\) 表示到 \(i\) 人后,以 \(i\) 为根的所有人安装完的最短时间. 对于一个节点 \(u\), 假设拜访子节点的顺序为 \(v_1,v_2,...,v_m\) ,那么得到转移方程. \[ f_u = max(f_v + \sum\li
        阅读全文
                
摘要:前置芝士:Here 本文是基于 OI wiki 上的文章加以修改完成,感谢社区的转载支持和其他方面的支持 树形 DP,即在树上进行的 DP。由于树固有的递归性质,树形 DP 一般都是递归进行的。 基础 以下面这道题为例,介绍一下树形 DP 的一般过程。 例题 洛谷 P1352 没有上司的舞会 题目描
        阅读全文
                
摘要:写在前面 深感自己 DP 很弱的 村人B 刷了点 DP 题,题集地址戳这里。 后记:刷完后感觉自己又行了 A - Frog 1 题意 给定 \(n\) 个石头,第 i 个石头的高度为 \(h_i\)。现在要求小青蛙从 1 号石头跳到 n 号石头,每次小青蛙可以选择从 i 号石头跳到 i+1 或 i+
        阅读全文
                
 
                    
                
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号