111qqz的小窝
Home
ACM-ICPC
深度学习 icon
caffe源码阅读笔记 推荐系统 计算机视觉
公开课 icon
6.828 CS341 CSAPP
工程 icon
cpp cuda levelDB源码笔记 linux 前端 图像处理 容器
随笔杂谈
面试
About
🌐
English Chinese
  • 2016-2017 ACM-ICPC, NEERC, Northern Subregional Contest G Gangsters in Central City (LCA)

    Oct 12, 2017 · 3 min read · LCA

    题意: 有一棵树,水源在根节点1,房子在叶子节点。有若干操作,操作可能是歹徒占领或者离开一个房子。我们不想给歹徒供水,可以通过切断边实现(如果某个叶子节点到根节点的路径上有一条边被切掉,那么就不能供水了。)对于每次操作后,问不给所有歹徒供水最少要切多少条边,并且问在切满足前面最小的情况下,最少使得多少个良民受影响。初始没有歹徒。 思路: 我们先考虑第一个问题。容易知道,假设与根相连的有k条边,那么最多只需要切k次,就切断了所有房子的水源。 也就是说,从最少切的次数角度的考虑,切与水源相连的边一定是最优的。 我们可以考虑把树根1去掉,这样得到k棵子树 然后可以预处理出,对于每个叶子节点,其非根的最远祖先是谁,也就是k棵子树的根节点都是 …


    Read More
  • hdu 3078 Network (LCA)

    Jul 30, 2017 · 2 min read · dfs LCA rmq

    题目链接 题意: 一棵树,给出点权,问一条树链上第k大的点权,点权可以动态修改。 思路: 暴力即可orz(数据是真的水啊。 求路径上的点的时候需要用到LCA /* *********************************************** Author :111qqz Created Time :2017年07月31日 星期一 01时12分54秒 File Name :3078.cpp ************************************************ */ #include <cstdio> #include <cstring> #include …


    Read More
  • codeforces #425 D. Misha, Grisha and Underground (dfs+rmq在线求LCA,讨论了一年)

    Jul 30, 2017 · 3 min read · dfs LCA rmq

    题目链接 题意: 给出一棵树,以及三个点(可能重合),问两两组成的3条路径中,哪2条路径重合部分最长。 思路: LCA还是一下就能想到的,rmq+dfs在线求。 然后我开始分情况讨论,讨论了一年也没讨论完,哭哭 结论是:求出三个lca,并取深度最大的那个,就是我们要的三岔路口K,然后分别求出K到a,b,c三点的路径长度,取最大值+1就是答案。 所以我的问题在于,没有试图往一般性的方向考虑,以为讨论一下就可以了... 这大概就是所谓的猜结论? 感性的理解的话,LCA越深,意味着另一个点到LCA的距离越远,也就是相交的路径越长 但是我的话,估计还是很难在短短不到一个小时内得出这样一般性的结论orz... 这大概就是数学方面的天赋差距 …


    Read More
  • leetcode 235. Lowest Common Ancestor of a Binary Search Tree(求一个BST中某两个节点LCA)

    Feb 22, 2017 · 1 min read · binary search LCA

    题目链接 题意:求一个BST中某两个节点LCA.... 思路:卧槽。。。竟然求LCA...直接想到的显然是Tarjan的方法或者。。。RMQ+DFS。。。但是感觉。。。leetcode怎么可能考算法。。。。于是想到。。。可以从BST下手。。。 两个节点的LCA的值一定在这两个节点之间。 可以根据这个条件做二分。。。 这道题的收获是。。。不要被已知的东西限制住思路。。。tarjan或者RMQ+DFS显然也能做。。。但是那样的相当于没有用到BST的条件。。。 /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; …


    Read More
  • zoj 3195 Design the city (lca,dfs+rmq)

    May 21, 2016 · 2 min read · LCA rmq

    zoj 3195题目链接 题意:求树上三点的最短距离。。。 思路:两两求,和除以2. 因为忘记初始化p=0..WA了将近两个小时。。。? 妈的智障。 /* *********************************************** Author :111qqz Created Time :2016年05月21日 星期六 14时44分39秒 File Name :code/zoj/3195.cpp ************************************************ */ #include <cstdio> #include <cstring> #include …


    Read More
  • hdu 2874 Connections between cities (添加虚点,并查集+LCA(rmq+dfs))

    May 21, 2016 · 3 min read · LCA rmq 并查集 虚点

    hdu2874题目链接 题意:给一个森林,问两点的最短距离,或者输出两点不联通。 思路:最最重要的一点是:添加虚点! 最最重要的一点是:添加虚点! 最最重要的一点是:添加虚点! 所谓虚点,就是之前假设某个不存在的点,有点类似做辅助线。 通过添加虚点,我们可以把这个森林转化成一棵树。 这样求两点的距离就可以转化成一棵树上的两点的距离。 用dis[u]+dis[v]-2*dis[LCA(u,v)]来求。 dis[i]表示节点i到新的树根节点的距离。 不联通的话就是LCA 为0的情况(0是添加的虚点,作为新的树的根) 具体添加虚点的方法是:森林中每棵树的根连边到虚点上。权值大小随意,因为最后会抵消(?) 为了知道每棵树的根,需要用到并查 …


    Read More
  • poj 1986 Distance Queries (lca,在线做法dfs+rmq)

    May 20, 2016 · 2 min read · LCA rmq

    题目链接 题意:求树上两点的最短距离? 思路: dis[i]表示点i到根节点的距离,那么任意两点u,v的最短距离d = dis[u]+dis[v]-2*dis[LCA(u,v)]. 只需要求出rmq+dfs的在线方法求出lca(u,v)即可。 /* *********************************************** Author :111qqz Created Time :2016年05月20日 星期五 15时36分47秒 File Name :code/poj/1986.cpp ************************************************ */ #include …


    Read More
  • poj 1470 Closest Common Ancestors (lca,rmq+dfs,读入技巧)

    May 19, 2016 · 2 min read · dfs LCA rmq

    poj1470题目链接 题意:求两点的lca. 思路:dfs+rmq. 读入技巧。 读入比较坑爹。。。 学会了一种新的读入技巧。 scanf("%2s",st); 表示读一个长度为2的字符串。。。读的时候会忽略各种空白字符。 /* *********************************************** Author :111qqz Created Time :2016年05月19日 星期四 15时44分12秒 File Name :code/poj/1470.cpp ************************************************ */ #include …


    Read More
  • poj 1330 Nearest Common Ancestors (lca,用dfs+rmq在线求解)

    May 19, 2016 · 2 min read · dfs LCA rmq

    poj1330题目链接 题意:给出一棵树,求两点的lca. 思路:将lca转化成rmq在线求解。 代码部分参考了:参考代码 感觉实现得很巧妙。。。 把树存成了有向图,dfs遇到的时候一定是第一次遇到,此时更新R. 然后第二次遇到某个点就是在回溯的时候了。 算法学习链接 /* *********************************************** Author :111qqz Created Time :2016年05月19日 星期四 15时05分31秒 File Name :code/poj/1330.cpp ************************************************ …


    Read More
  • hdu 2586 How far away ? (tarjan算法求LCA模板题)

    Apr 12, 2016 · 2 min read · LCA Tarjan

    题目链接 题意:一棵树,给出n-1个边权,然后q组查询,每组查询询问两个点之间的距离。 思路: dfs跑出根到每个点的距离,设为dis[i] 那么u,v两点的距离就是ans = dis[u]+dis[v]-2*dis[lca(u,v)]; 其中lca(u,v)为u,v的最近公共祖先。 这个式子是利用容斥,其实也很直观。。不理解的话画个图就好。 所以终点就是求两个点的LCA. 据说有好多种做法。今天学习了大概是最简单的一种? 学习链接 //parent为并查集,FIND为并查集的查找操作 //QUERY为询问结点对集合 //TREE为基图有根树 Tarjan(u) visit[u] = true for each (u, v) in …


    Read More

111qqz

深度学习框架工程师@Tencent, ex-ICPCer@HUST
Read More

Recent Posts

  • caffe 源码阅读笔记
  • Goodbye 2024
  • [施工中] cupy与torch的导入顺序不同对计算结果的影响
  • 写在毕业五年之后
  • Build Onnxruntime With Bazel
  • Goodbye 2022
  • 【施工中】gitlab ci docker executor指定用户执行
  • [施工中]caffe 源码学习笔记(11) softmax

Categories

ACM 913 其他 90 DEEP-LEARNING 68 面试 63 随笔杂谈 62 工程 59 计算机视觉 21 MOOC 15 优化 10 C++ 4 生活 1

Series

CAFFE源码阅读笔记 13 LEVELDB代码阅读笔记 9 CSAPP 7 CPP-FAQ 1 MODERN-CPP 1

Tags

DP 71 MATH 49 线段树 43 BRUTE-FORCE 39 LEETCODE 38 GREEDY 36 DFS 34 NUMBER-THEORY 27 CPP 26 模拟 24 博弈论 22 构造 22 BINARY-SEARCH 21 母函数 21
All Tags
01背包9 2-SAT1 6.8284 AC自动机4 ANACONDA1 ANCHOR-BOX1 ANTI-SG2 ARCHLINUX2 ASYNC1 ATOM1 AVX1 AWK1 BAZEL1 BFS20 BINARY-SEARCH21 BINARY-SEARCH-TREE1 BITSET优化4 BLOG1 BOOST1 BOOSTING1 BRUTE-FORCE39 BSGS4 C++7 C++111 CACHE1 CAFFE14 CAFFE21 CALL-STACK1 CALL_ONCE1 CDQ分治3 CHECKPOINT1 CHROMEBOOK1 CI1 CMAKE1 CODEFORCES1 CONDITION_VARIABLE1 CONVOLUTIONAL-NEURAL-NETWORK1 CPP26 CS231N1 CS3411 CSAPP7 CSE599W1 CUDA6 CUMULATIVE-MATCH-CHARACTERISTI1 CUPY1 D1 DFS34 DFS序1 DIJKSTRA2 DISCOURSE1 DL-SYS1 DOCKER6 DP71 EIGEN1 END-TO-END1 FACTORIAL-NUMBER-SYSTEM1 FASTER-RCNN3 FEATURE-PYRAMID-NETWORKS1 FEDORA1 FISH1 FLOYD10 FLOYD-判圈2 FPN1 FUTURE2 G++1 GALLIUMOS1 GCC1 GCD2 GDB1 GEDIT1 GEEKOS4 GITHUB1 GITLAB1 GOLANG1 GREEDY36 GRPC2 GRUB1 GRUNDY1 HALIDE2 HAPROXY1 HASH13 HASH-MAP1 HASKELL1 HIGH-PERFORMANCE-COMPUTING1 HUGO2 IMAGE-DENOISING1 INCEPTION1 JAVA5 JAVASCRIPT1 JDK1 JETSON-NANO2 JSON1 K-MEANS2 K-SUM3 K8S2 KAFKA1 KD-TREE6 KM14 KMP19 KM算法1 LATENT-FACTOR-MODEL1 LATEX1 LAZY标记9 LCA10 LEETCODE38 LEVELDB10 LINEAR-CLASSIFICATION1 LINUX9 LINUX-MINT1 LIS5 LOG2 LRU2 LSTM1 LUA1 LUCAS定理3 MANACHER4 MANJARO3 MAP6 MATH49 MEAN-AVERAGE-PRECISION1 METRIC-LEARNING1 MILLER-RABIN素数测试1 MODEL-CONVERTOR1 MODEL-DISTILLATION1 MODERN-CPP10 MPI1 MST6 MURMURHASH1 MUTUAL-LEARNING1 MYSQL3 NERDTREE1 NETWORK1 NIM游戏4 NLP1 NMS1 NON-LOCAL-MEANS1 NON-LOCAL-NEURAL-NETWORKS1 NUMBER-THEORY27 NUMPY1 OBJECT-DETECTION2 ONCE_FLAG1 ONNXRUNTIME1 PACKAGED_TASK1 PCA2 PERFECT-FORWARDING1 PIPLINE1 POSE-DRIVEN1 PRIM1 PROMISE2 PROPERTY_TREE1 PROTOBUF1 PYTHON11 PYTORCH2 QT5 REACT3 REDIS1 REDUX1 REID3 RESNET2 RETINANET1 RMQ17 RNN1 SET8 SG函数12 SHADOWSOCKS2 SIMD1 SIMHASH1 SIMILARITY-LEARNING1 SINGLE-STATE-DETECTOR1 SJ定理2 SLIDING-WINDOWS1 SLIM1 SORT1 SORTINGS3 SPFA10 SPRING2 SSD1 STDANY1 STDSHARED_PTR1 STEAM2 STL16 STREAM1 SUPERCOMPUTING1 SUPERVISOR1 TARJAN2 TENSORFLOW12 TENSORRT2 THREADING-BUILDING-BLOCKS1 THRUST1 TREE7 TRIE7 TRIPLET-LOSS1 TSP2 TWO-POINTER5 TYPESCRIPT1 UNICODE1 VALUE-CATRGORY1 VARIADIC-FUNCTION1 VARIETY1 VECTOR2 VIM6 VUNDLE1 WHITENING1 WORDPRESS1 YOUCOMPLETEME1 YUV-IMAGE-FORMAT1 一致性哈希1 三分2 中国剩余定理4 主席树5 乱搞6 二分2 二分图5 二分图匹配4 二分图最佳匹配14 二次剩余4 二维线段树1 二进制1 二项式定理1 交互题1 交叉染色法6 京东1 优先队列4 传递闭包5 位运算4 依赖注入1 偏度1 光流法1 内存屏障1 凸包1 分块12 分布式消息系统1 分治2 分类讨论1 前端6 前缀和17 剩余系3 剪枝1 动态线段树1 动态连通性1 勾股数1 匈牙利算法15 区间DP13 区间合并1 区间第K大2 区间计数1 协同过滤1 单调性优化1 单调栈10 单调队列3 博弈论22 反向传播1 反素数5 可持久化数据结构5 同构1 后缀和1 后缀数组10 后缀自动机13 哥德巴赫猜想1 四叉树1 回文串2 回文自动机7 图像处理2 图论16 图论基础1 基础图论1 字符串14 字符串DP1 字符串循环同构4 完全背包2 容斥原理5 对拍1 射线法1 尺取2 尺取法10 局部敏感HASH2 峰度1 差分序列1 巴什博奕5 年终总结1 并查集9 并行计算2 康托展开1 康托展开/逆展开2 循环展开1 循环节8 快速乘1 快速幂20 快速筛2 思维1 思维题7 打表2 扩展BSGS2 扩展欧几里得算法8 扫描线4 抽屉原理6 拆点6 拓扑排序7 括号匹配2 指数循环节7 排列组合8 推荐系统3 数位DP17 数值计算方法2 数字图像处理2 数据压缩1 数据结构2 数论2 文明1 斐波那契7 斜率优化3 无向图的环3 曼哈顿距离4 最大独立集1 最大连续区间和3 最大连续和1 最小生成树2 最小表示法7 最小覆盖子串3 最小覆盖子矩形1 最小路径覆盖2 最小顶点覆盖2 最短路5 最长下降子序列1 最长公共字串4 最长路2 构造22 枚举子集4 染色问题1 栈1 树套树1 树形DP6 树状数组20 树的直径9 梯度下降1 概率13 模型转换1 模拟24 模拟退火5 次小生成树2 欧拉函数4 欧拉路1 正则表达式1 母函数21 水5 水题7 泰勒展开3 游戏1 激活函数1 爬山法1 爬虫2 状压DP1 状态压缩1 百度1 矩形周长并1 矩形面积交1 矩阵20 矩阵快速幂5 离散化11 符号可见性1 符号表1 第二类斯特林数1 筛法1 系统调用1 线段树43 组合数学10 组合模式1 组成原理1 细节题1 结论题1 编译原理1 编译器1 置换群1 莫队算法10 蓄水池抽样1 虚点1 裴蜀定理5 观察者模式1 计数排序2 计数问题10 计算几何20 计算机视觉2 计组1 记忆化搜索2 设计模式2 贝尔数2 贪心1 费马小定理3 费马点1 路径DP1 路径记录2 输入挂2 辛普森积分2 连通性2 逆元5 逆序对5 递推2 重心1 链式前向星1 错排公式2 面试1 面试经历3 预处理1 高斯消元1 高精度2
[A~Z][0~9]
111qqz的小窝

Copyright  111QQZ的小窝. All Rights Reserved