摘要:一些奖项: CCPC省赛: Gold Medal ICPC省赛:Silver Medal CCPC秦皇岛:Honorable Mention ICPC亚洲区域赛宁夏:Gold Medal ICPC EC Final:Bronze Medal ICPC ID: 一些经历 担任了一年的算法协会会长 组织 阅读全文
posted @ 2020-01-24 18:58 codancer 阅读(98) 评论(0) 推荐(0) 编辑
摘要:挺好的题目,就是不太会... H Index 题意:对于一个数组,对于每个$i( 1\leq i \leq n)$,找到一个数字$H$,使得$a_{1}...a_{i}$中大于等于$H$的数字的出现的次数也大于等于$H$。 solution: 可发现对于从$i$到$i+1$,答案最多增加$1$,可以 阅读全文
posted @ 2020-01-24 18:36 codancer 阅读(206) 评论(0) 推荐(0) 编辑
摘要:题意 $n$段区间,要把他们分到两个不同的集合$S,T$中,不能有剩余,每个区间只能在一个集合里,令$S$中所有区间的交的长度为$ls$,$T$中所有区间的交为$lt$,求$max\{ls+lt\}$。 题解 找到 $L$ 最大的区间 $p$ 和 $r$ 最小的区间 $q$,那么只有两种情况: $1 阅读全文
posted @ 2020-01-24 18:33 codancer 阅读(55) 评论(0) 推荐(0) 编辑
摘要:出发: 2019年9月20日凌晨四点,我和Dicer还有凯凯踏上了前往秦皇岛的火车,一趟神奇的旅途就这样开始了... 第一次坐那么久的火车,虽然是硬卧,但是有些难受,由于空调吹冷风,结果,我感冒了。。 到了宾馆已经晚上十点半了,又饿又困,然后晚上点了40+的外卖,实不相瞒,没有学校的正新鸡排好吃多了 阅读全文
posted @ 2020-01-24 18:31 codancer 阅读(92) 评论(0) 推荐(0) 编辑
摘要:B.so easy 并查集,可能会卡掉map,建议使用unordered_map。 C.Buy Watermelon 签到,大于2的偶数都可以被拆分成两个偶数和。 cpp include using namespace std; const int N = 1e6+100; const int mo 阅读全文
posted @ 2020-01-24 17:30 codancer 阅读(72) 评论(0) 推荐(0) 编辑
摘要:"A.The beautiful values of the palace" 首先对于每个$(x,y)$,我们可以$O(1)$的查询出这个坐标的值。接下来就将问题转化为了一个$10^6 \cdot 10^6$的矩阵,每次查询子矩阵内的点的和。 考虑将所有的$y$离散化,计$mp_{i,j}$表示$( 阅读全文
posted @ 2020-01-24 17:29 codancer 阅读(27) 评论(0) 推荐(0) 编辑
摘要:"题目链接" 题意: 两个长度为$n$的数组$a$和$b$和一个正整数$C$,计算有多少个$x$满足: $$ \sum_{i=1}^n|a_i \cdot x+b_i|=C $$ 思路: 该函数为分段函数,每段的转折点为$ \frac{b_i}{a_i}$,先把转折点排序,计最开始的函数值为$x \ 阅读全文
posted @ 2020-01-24 17:28 codancer 阅读(44) 评论(0) 推荐(0) 编辑
摘要:"题面" 题意: 定义$A(n)$为$n$个1构成的数字,如$A(3)=111$,计算有多少对$(i,j)$使得$A(i^j) \% p = 0$。 思路: 通过枚举发现是有上面的等式是有循环节的,而且循环节是$p 1$的因子,因此暴力枚举计算出循环节$d$,接下来就是求有多少对$i^j \% d= 阅读全文
posted @ 2020-01-24 17:27 codancer 阅读(64) 评论(0) 推荐(0) 编辑
摘要:引入 一个长度为$n$的数组,有$m$次查询,每次查询区间$[l,r]$内第$k$小的元素。 如果使用暴力,肯定不可以 使用线段树?可是我只会查询区间最值啊。 那么我们把问题再次简化一下,查询$[1,n]$第$k$小的元素,要求使用线段树来实现。 权值线段树 为了解决这个问题,我们引入一个名词: 权 阅读全文
posted @ 2020-01-24 17:25 codancer 阅读(92) 评论(0) 推荐(0) 编辑
摘要:"题面" 题意: 找到一个区间$[l,r]$使得$min(a_{l...r}) \cdot sum(b_{l...r})$最大。 思路 先用单调栈预处理出$a_i$作为最小值的区间,然后对于每一个$a_i$,如果是$a_i using namespace std; const int N = 3e6 阅读全文
posted @ 2020-01-24 17:23 codancer 阅读(116) 评论(0) 推荐(0) 编辑
摘要:Problem 1002 "Operation" 题意: 一个长度为$n$的字符串$a$,执行下面的操作 $1$ $l$ $r$查询区间内异或的最大值 $0$ $x$ 将$x$放到数组最后一位 输入和输出是强制在线的。。。 思路: 考虑维护一个前缀线性基$f_{ij}$,同时贪心的使线性基的位置尽可 阅读全文
posted @ 2020-01-24 17:22 codancer 阅读(54) 评论(0) 推荐(0) 编辑
摘要:简介 序列自动机是一个可以快速判断字符串$t$是否是字符串$s$的子串的一个算法。 构造 对$s$构造序列自动机,使用$Nxt_{i,j}$代表从第$i$个位置开始,字符$j$出现的第一个位置。我们倒着遍历更新即可。 阅读全文
posted @ 2020-01-24 17:19 codancer 阅读(622) 评论(0) 推荐(0) 编辑
摘要:"A.Cotree" 题意: 两棵树,你需要连接两个点使得$\sum_{i=1}^{i=n}{\sum_{j=i+1}^{j=n}}{dis(i,j)}$最小。 思路: 对于每棵树进行换根dp,对每棵子树找到一个点使得所有点到这个点的距离和最小,连接这两个点,然后进行一次DFS统计每条边的贡献,累加 阅读全文
posted @ 2020-01-24 17:17 codancer 阅读(172) 评论(0) 推荐(0) 编辑
摘要:引言: 什么是拉格朗日插值?假设我们现在有三个点 $(x_1,y_1),(x_2,y_2),(x_3,y_3)$,现在我们要找一条唯一的二次曲线刚好经过这三个点。 拉格朗日给出了一个绝妙的方法,他把我们要求的曲线的表达式等同于三个函数的累加。具体是这么操作的: 第一个函数保证$f_1(x_1)=1, 阅读全文
posted @ 2020-01-24 17:14 codancer 阅读(321) 评论(0) 推荐(0) 编辑
摘要:首先我们现在有一个矩阵$R_{mn}$,其中$R_{ij}$代表第$i$个用户对第$j$个商品的喜爱程度。 $LMF$算法认为每个商品上面都有一些隐因子,而顾客的喜爱程度是由这些隐因子来决定的。因此便可以将$R_{mn}$分解成$P_{mF} \times Q_{Fn}$的形式。 矩阵$P_{mF} 阅读全文
posted @ 2020-01-24 16:02 codancer 阅读(367) 评论(0) 推荐(0) 编辑
摘要:梯度下降法 梯度下降法(英语:Gradient descent)是一个一阶最优化算法,通常也称为最速下降法。 要使用梯度下降法找到一个函数的局部极小值,必须向函数上当前点对应梯度(或者是近似梯度)的反方向的规定步长距离点进行迭代搜索。如果相反地向梯度正方向迭代进行搜索,则会接近函数的局部极大值点;这 阅读全文
posted @ 2020-01-24 15:59 codancer 阅读(889) 评论(0) 推荐(1) 编辑
摘要:1. "迷宫城堡" 题意:给一个图判断是否是强连通图。 题解:利用Tarjan计算图中强连通分量的个数,如果为1则是强连通图,否则不是。 阅读全文
posted @ 2020-01-24 15:57 codancer 阅读(81) 评论(0) 推荐(0) 编辑
摘要:$1.gcd$(最大公约数) 对于给出的两个数$a,b$,我们可以用欧几里得算法来计算最大公约数。欧几里得算法的精髓就在于下面这个公式: $gcd(a,b)=gcd(b,a$%$b)$ 证明: 已知:$gcd(a,b)|a$并且$gcd(a,b)|b$,设$a$%$b=r$,则$a=r+kb$,故$ 阅读全文
posted @ 2020-01-24 15:55 codancer 阅读(76) 评论(0) 推荐(0) 编辑
摘要:之前的博客现已搬迁到博客园。 阅读全文
posted @ 2020-01-24 15:51 codancer 阅读(38) 评论(0) 推荐(0) 编辑
摘要:出发​ 十点的比赛,八点出发,主办方说我们是除了郑大离得最近的学校,要我们必须参加开幕式,结果成功的鸽了。 比赛 进入机房,Dicer看了看zzuli电脑配置,和Dicer口嗨。然后吐槽键盘、鼠标。十点的比赛,推迟到了10:20(貌似我打过的比赛都被推迟过)。 比赛开始,纸质题面呢???监考老师:" 阅读全文
posted @ 2020-01-24 15:46 codancer 阅读(121) 评论(0) 推荐(0) 编辑