文章分类 - 算法蒟蒻
摘要:【树上模拟】 1-1-1, Free Tree! https://codeforces.com/contest/2126/problem/F 树很关键的一个优化点:父亲有且只有一个 ->将遍历出边O(n)优化到:遍历父亲O(1)/儿子(如果可以一起维护) 题目大意 思路 难点在于每次修改颜色之后需要
阅读全文
摘要:【排序】 本条博客仅收入纯排序相关的题目 【推公式】Transmission Mission https://atcoder.jp/contests/abc414/tasks/abc414_d 题目大意 思路 首先排序位置 如果最开始只有一个基站:只能建在最中间,且信号强度为x[n]-x[1] 给数
阅读全文
摘要:【与循环有关的问题】 一般是把数组再复制一遍 然后观察数组与下标的关系 战前准备 https://ac.nowcoder.com/acm/contest/112575/C 题目大意 对一个数组可以进行k循环移位(把后面的拿到前面去) 对于每一个数(0<x<m),设在数组中第一次出现的位置为p[x]
阅读全文
摘要:【差分约束】 概念 题目会显性或隐性的给出一组约束条件(不等关系) ->转化为差分约束来解决 形如 求其中x[1],x[2],...x[n]的任意解/要么无解 ->最大解、最小解问题 求解逻辑 Bellman-Ford算法/SPFA算法 总结 (见https://www.zybuluo.com/DA
阅读全文
摘要:【期望DP】 期望 定义:数值x概率的总和 题目积累 Socks 4 https://atcoder.jp/contests/abc412/tasks/abc412_f 题目大意 小红的双排列期望 题目大意 (easy)概率失败了没有变化 https://ac.nowcoder.com/acm/co
阅读全文
摘要:【BFS】题目积累 BFS更适用于扩展性的题目:由几个原始点往外拓展 DFS更适用于遍历性的题目:一条分支走到结束再回头 No Passage 属于题目大意比较难懂的那一类 https://atcoder.jp/contests/abc413/tasks/abc413_f 题目大意 nxm的棋盘,若
阅读全文
摘要:【搜索优化】ID/A/IDA 题目积累 Big Banned Grid https://atcoder.jp/contests/abc413/tasks/abc413_g A*板子题 int h,w,k; map<PII,bool> p; struct node{ int x,y,v; bool o
阅读全文
摘要:【分治思想的模拟】 写法很像归并排序 merge_sort(q,l,mid); merge_sort(q,mid+1,r); 一般都是递归 代码一般都很简洁 Reverse 2^i https://atcoder.jp/contests/abc413/tasks/abc413_e 题目大意 一个排列
阅读全文
摘要:【与因数有关的问题】 d(m):表示m的因数 可用于求复杂度:比O(logn)小 求因数可避免遍历整个n->优化点 Modular Sorting https://codeforces.com/contest/2123/problem/G 题目大意 思路 【思路】 设d=gcd(k,m) 那么d应该
阅读全文
摘要:【拓扑排序】 概念 每个节点的前置节点都在当前节点之前 要求 有向无环图 拓扑排序顺序可能不止一种 拓扑排序也可判断有无环 求拓扑序 (1)图中找到所有入度为0的点 (2)把所有入度为0的点在图中删掉,然后删掉影响 (3)直到所有点都没删掉->依次删除的顺序就是拓扑排序结果 (4)无法删掉所有点->
阅读全文
摘要:【全排列】 性质 若干个不同的数 可以组成多少个不同的序列 全排列个数:\(n!\) 求解全排列:dfs+回溯 题目整理 小红与好数组 https://ac.nowcoder.com/acm/contest/112320/D 求和的全排列+附加条件 按字典序从小到大输出->每次dfs都从1开始for
阅读全文