
CF题解
oier_forever
这个作者很懒,什么都没留下…
展开
-
Codeforces 840C 题解(DP+组合数学)
题面C. On the Bench time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output A year ago on the bench in public park Leha found an array of n numbe...原创 2018-05-09 19:02:18 · 550 阅读 · 0 评论 -
Codeforces 1058C(思维+最大公因数)
题面传送门分析引理1:三角形的面积×2\times 2×2一定是整数由坐标系中的三角形面积公式S=12(x1y2+x2y3+x3y1−x1y3−x2y1−x3y2)S=\frac{1}{2}(x_1y_2+x_2y_3+x_3y_1-x_1y_3-x_2y_1-x_3y_2)S=21(x1y2+x2y3+x3y1−x1y3−x2y1−x3y2)显然得证故若2...原创 2018-09-24 09:54:28 · 611 阅读 · 3 评论 -
Codeforces 1042C (贪心+模拟)
题面传送门分析思路简单,但代码较复杂的贪心分类讨论:有0负数有奇数个:将绝对值最小(实际最大)的负数和0全部乘到一起,最后删掉0负数有偶数个:将0全部乘到一起,最后删掉0没有0负数有奇数个:将绝对值最小(实际最大)的负数删掉负数有偶数个:不删最后把剩下的数依次乘在一起即可代码#include<iostream>#include<cst...原创 2018-09-18 18:14:14 · 234 阅读 · 0 评论 -
Codeforces 843D (Dijkstra算法的优化,动态最短路)
题面(http://codeforces.com/problemset/problem/843/D) 题目大意: 给定一张带权无向图,有q次操作 操作有两种 1 v 询问1到v的最短路 2 c 将边l1,l2…lcl1,l2…lcl_1,l_2 \dots l_c 的权值增加1分析暴力的做法是每次重新建图,然后跑一次最短路 这样的时间复杂度是O((n+m)qlog2n+Σc...原创 2018-08-17 09:41:18 · 266 阅读 · 0 评论 -
Codeforces 429E(欧拉回路)
题面传送门 题目大意: 有n条线段,每条线段染红色或蓝色,使得数轴上每个点被红色线段覆盖的次数与被蓝色线段覆盖数差的绝对值小于等于1。输出染色方案。分析题意其实可以这样理解: 一段初始全为0 的序列a,给区间[li,ri][li,ri][l_i,r_i]+1或-1,使得操作结束后序列中的所有位置绝对值不超过1 可采用差分的思想,给al+1,ar+1−1al+1,ar+1−1a_...原创 2018-08-17 09:01:24 · 241 阅读 · 0 评论 -
Codeforces 191C (LCA+树上差分算法)
题面传送门 题目大意: 给出一棵树,再给出k条树上的简单路径,求每条边被不同的路径覆盖了多少次分析解决这个问题的经典做法是树上差分算法 它的思想是把”区间”修改转化为左右端点的修改 在树上,每个节点初始权值为0,对于每条路径(x,y),我们令节点x的权值+1,节点y的权值-1,节点LCA(x,y)的权值-2 最后进行一次DFS,求出F[x]表示x为根的质数中各节点的权值之和,...原创 2018-07-07 14:15:51 · 652 阅读 · 1 评论 -
Codeforces 609E (Kruskal求最小生成树+树上倍增求LCA)
题面传送门 题目大意: 给定一个无向连通带全分析代码原创 2018-07-10 16:26:42 · 401 阅读 · 1 评论 -
Codeforces 990C (模拟+组合数学)
题面:传送门分析:此题O(n2l)O(n2l)O(n^2l)模拟肯定是会超时的(l为所有字符串总长) 我们想到对字符串进行一定的预处理,可以快速计算匹配 我们设每一个(的值为1,)的值为-1,规定 若只有)括号多了x个,则l[i]=r[i]=-x<0 若只有(括号多了x个,则l[i]=r[i]=x>0 那么如何求l[i],r[i]的值呢? 从左到右扫描字符串,用...原创 2018-06-11 17:35:49 · 371 阅读 · 0 评论 -
Codeforces 601B(贪心+斜率+组合数学+单调栈)
题面传送门 题目大意: L(h)的值是区间[L,R]内,abs(h[i]-h[j])/(i-j)的最大值。现在有q个询问,每个询问表示询问区间[L,R]内,所有子序列的L(h)的值的和分析将∣∣∣h[i]−h[j]i−j∣∣∣|h[i]−h[j]i−j|\left| \dfrac {h\left[ i\right] -h\left[ j\right] }{i-j}\right|想成...原创 2018-05-28 20:42:28 · 171 阅读 · 0 评论 -
Codeforces 984D 题解(DP)
题面传送门 题目大意: 给你一个计算区间f函数的公式,举例f(1,2,4,8)=f(1⊕2,2⊕4,4⊕8)=f(3,6,12)=f(3⊕6,6⊕12)=f(5,10)=f(5⊕10)=f(15)=15 然后现在给你一个数列,n<=5000,然后q个询问,q<=100000,每次询问[l,r]区间内f函数的最大值是多少分析此题可用DP求解 设dp[i][j]dp[i]...原创 2018-05-28 19:54:00 · 230 阅读 · 0 评论 -
Codeforces 979D (STL set)(不用Trie简单AC)
题面:传送门 题目大意: 给定一个空集合,有两种操作: 一种是往集合中插入一个元素x,一种是给三个数x,k,s,问集合中是否存在v,使得gcd(x,v)%k==0,且x+v&amp;lt;=s若存在多个满足条件,则输出使得v⊕x最大的v。分析:首先,gcd(x,v)%k==0,由数论知识得该条件等价于x%k==0&amp;amp;&amp;amp;v%k==0 那么,我们怎么快速求出能整除k的v呢 ...原创 2018-06-02 19:47:29 · 161 阅读 · 0 评论 -
Codeforces 691E题解 DP+矩阵快速幂
题面E. Xor-sequences time limit per test3 seconds memory limit per test256 megabytes inputstandard input outputstandard output You are given n integers a1, a2, …, an.A sequence of integers x...原创 2018-05-15 20:09:42 · 523 阅读 · 0 评论 -
Codeforces 515C 题解(贪心+数论)(思维题)
题目网址:http://codeforces.com/problemset/problem/515/CDrazil is playing a math game with Varda.Let’s define f(x)f(x) f(x) for positive integer x as a product of factorials of its digits. For example,...原创 2018-05-21 18:34:21 · 602 阅读 · 0 评论 -
Codeforces 475D 题解(二分查找+ST表)
题面:Given a sequence of integers a1, …, an and q queries x1, …, xq on it. For each query xi you have to count the number of pairs (l, r) such that 1 ≤ l ≤ r ≤ n and gcd(al, al + 1, …, ar) = xi. 题目大意...原创 2018-05-21 13:05:47 · 480 阅读 · 0 评论 -
Codeforces 833B 题解(DP+线段树)
题面B. The Bakery time limit per test2.5 seconds memory limit per test256 megabytes inputstandard input outputstandard outputSome time ago Slastyona the Sweetmaid decided to open her own bakery!...原创 2018-05-14 21:40:07 · 235 阅读 · 0 评论 -
Codeforces 1047C (线性筛+因数分解)
题面传送门分析1.暴力做法可以O(namax)O(n\sqrt {a_{max}})O(namax)的时间内分解出所有数的质因数,然后统计出现次数最多且次数不为n的质因数,设最多出现次数为x(x≠n)x(x \neq n)x(x̸=n),然后把其他的数去掉就可以了,答案为n−xn-xn−x例:n=4,a={6,10,15,30}n=4,a=\{6,10,15,30\}n=4,a=...原创 2018-09-22 09:19:39 · 534 阅读 · 0 评论