111qqz的小窝
Home
ACM-ICPC
深度学习 icon
caffe源码阅读笔记 推荐系统 计算机视觉
公开课 icon
6.828 CS341 CSAPP
工程 icon
cpp cuda levelDB源码笔记 linux 前端 图像处理 容器
随笔杂谈
面试
About
🌐
English Chinese
  • codeforces 292 E. Copying Data (染色问题,线段树lazy标记模板题)

    Sep 6, 2016 · 2 min read · lazy标记 染色问题 线段树

    x题目链接 题意:给出两个数组,每个数组n个数,分别为a和b,给出m个操作,操作有两种类型,第一种是给出x,y,k,表示从a数组的x坐标开始复制k个数到b数组的y到y+k-1。 第二种操作是给出x,询问当前b[x]是多少。 对于每个第二种操作,输出结果。 思路:第一次写lazy标记的线段树。 今天突然就顿悟了。。。其实lazy标记的思想大概就是。。 对于某段区间的更新,如果没有查询到这段区间中任何一个数的时候。。。那么这个更新其实是无所谓的。。。 (让我想到了那个脑洞,就是整个世界都是一段程序,为了让你不察觉异常并且耗费尽量少的资源,所有场景只有在有人观测的时候才会被加载,不观测就用很少的资源随便处理一下233) 所以lazy标记, …


    Read More
  • codeforces 474 F. Ant colony (线段树求gcd+统计区间中某数出现的次数的经典做法)

    Sep 5, 2016 · 2 min read · gcd number theory 区间计数 线段树

    题目链接 题意:给出n个数,m个查询,每组查询一个区间[l,r],问[l,r]中会被吃掉多少个(区间[l,r]中的数只有当其是其他所有数的因数时才不会被吃掉,顺便问一句。。a divide b 是 a除b,也就是b除以a,b/a的意思嘛23333) 思路:我们知道,不会被吃掉的数其实就是区间[l,r]中所有数的gcd,求gcd可以很容易用线段树办到。。。关键是还要统计该区间中等于gcd的数有多少个。 并不会做。 大概有两种做法。。。? 一种是基哥@clq11111说的,将询问离线,然后从小到大排序插入,询问区间中等于x转化成询问区间中小于等于x的,和询问区间中小于等于x-1的,做差即为所求。 第二种办法是题解的讨论区部分的: 想了 …


    Read More
  • codeforces 61 E. Enemy is weak (离散化+线段树求逆序三元组)

    Sep 5, 2016 · 2 min read · 离散化 线段树 逆序对

    题目链接 题意:给出n个数,求满足 i<j<k且a[i]>a[j]>a[k]的三元组有多少个。 思路:对于这种要求三个数满足条件的题目,老司机的经验是考虑中间那个数,这道题也不例外。 我们枚举j,通过求两次逆序对求出对于每个a[j],满足a[i]>a[j]的i的个数,以及满足a[j]>a[k]的个数。 两个个数的乘积就是j作为中间数满足的三元组的个数,这样把所有的j累加就是答案。 其他的就是,要离散化,以及最后答案可能会爆long long? 1A,好爽啊哈哈哈。 /* *********************************************** Author :111qqz …


    Read More
  • codeforces 459 D. Pashmak and Parmida's problem (离散化+线段树求逆序对数)

    Sep 5, 2016 · 2 min read · 线段树 逆序对

    题目链接 题意:定义_f_(l, r, x)为区间[l,r]中x出现的次数。现在要求calculate the number of pairs of indicies i, j (1 ≤ i < j ≤ n) such that_f_(1, i, a__i) > f(j, n, a__j). 思路:可以通过o(n)预处理出f(1,i,a[i])和f[j,n,a[j]],其实预处理的过程就是离散化的过程呢。。。 分别得到 1 1 2 3 2 3 4 4 3 3 2 2 1 1 所以答案其实就是第一组数在第二组数中找逆序数的过程。。。 我们不妨倒序处理。 需要注意的是,线段树维护的区间是0..mx,我整体增加了1. 线段树求 …


    Read More
  • codeforces 339 D. Xenia and Bit Operations(线段树)

    Sep 4, 2016 · 1 min read · 线段树

    题目链接 题意:给出n和m,初始给出1<<n个数,先相邻的两个数进行或操作(a[1]^a[2],a[3]^a[4]...),得到的新数列再相邻的两个数进行异或操作。 最后得到一个数,即为答案。现在给出m个操作,每个操作两个数p,b,表示令a[p]=b,每次变化后输出最终的结果。 思路:线段树。这道题让我学到了,线段树的数组tree[i]存储的信息可能不唯一,可以不同层存储的是不同的信息。 比如这道题中,距离叶子节点距离为奇数的点存储的是或操作的结果,距离叶子节点距离为偶数的点存储的是异或操作的结果。 还需要注意的是,build和update操作都是从顶向下,最后一个操作是异或还是或取决于n的奇偶性,记得判断。 /* …


    Read More
  • codeforces 19 D. Points (离散化+树套树(线段树+set))

    Sep 4, 2016 · 2 min read · set 树套树 离散化 线段树

    题目链接 题意: 在二维坐标平面内进行_n_ (1 ≤ _n_ ≤ 2·105) 次操作。一共有三种类型操作。 1.add x,y 将点(x,y)加进坐标系。 2.remove x,y 将点(x,y)移除. 3.find x,y 找到点(x,y)右上角的点(xp>x,yp>y)。如果有多个输出x最小的。还是有多个输出y最小的。 x,y均为非负数。以上操作均合法。 思路:没有思路。。。不会啊。。。以为要二维线段树什么的。。。。总之是不会做。。。 大概从中午开始看题解。。。8个小时。。。。终于完全搞懂了orz 很巧妙得把二维问题转化成了一维问题。。。 我来说一下大概做法,具体的细节见代码注释: 在x轴方向维护一课线段树,线段 …


    Read More
  • poj 2828 Buy Tickets (线段树单点更新,逆序插入)

    Sep 3, 2016 · 2 min read · 线段树

    poj 2828 题目链接 题意:n个人,每个人有一个rp值(用来区分不同的人),还有一个pos[i],表示当第i个人来排队的时候插入到第pos[i]个人的后面(也就是排在位置pos[i]+1) 现在问最后的序列,从1到n输出n个人的rp值 思路:第二道线段树,并不会做,看了题解。 比较关键的一点是:按照顺序的话,当后来的一个人插入到前面,那么之前很多人排好的位置将发生改变,这个代价是巨大的。 由于越后来的人越容易确定位置,因此正确的做法是倒序处理。 对于第i个人,我们把他放在从前往后数的第i个空的位置即可。 接下来需要做的就是线段树处理,线段树存储的信息是某一个区间中空位置的个数。 感觉是一道很好的题目,对于新手来说并不是很容易, …


    Read More
  • hdu 1754 I Hate It (线段树模板题,炒鸡详细注释版)

    Aug 18, 2016 · 3 min read · 线段树

    hdu 1754 题目链接 题意:单点更新,区间查询最大值。 思路:线段树。 一开始借鉴了clj的pointer写法。。wjmzbmr's code 直接MLE。。。看来也许只能在cf上用。。。 下面是MLE的代码: /* *********************************************** Author :111qqz Created Time :2016年08月18日 星期四 18时40分24秒 File Name :code/hdu/1754.cpp ************************************************ */ #include <cstdio> …


    Read More
  • 线段树学习笔记

    Aug 18, 2016 · 1 min read · 线段树

    嘛,终于下定决心搞定线段树了。 之前几次都是被lazy标记卡住,这次大概不会了吧2333 放一些学习资料,最后比较zkw线段树和普通线段树的区别。 codeforces上非递归线段树讲解 (其实就是zkw吧) 线段树进阶(各种花式技巧) 找到了一篇非常赞的tutorial(含lazy标记) 链接


    Read More
  • hdoj 2795 Billboard

    Dec 17, 2015 · 1 min read · 线段树

    http://acm.hdu.edu.cn/showproblem.php?pid=2795 题意:一个尺寸为wh的方格。要按顺序放放n个尺寸为1wi的纸条。问每一个纸条回被放在哪里。如果有多个,放在最上面(编号小) 思路:把没横行能放的最大长度看做一个序列建树。由于h比n大很多。。多出来的没用。。直接取较小值就行。 /* *********************************************** Author :111qqz Created Time :2015年12月17日 星期四 15时04分52秒 File Name :code/hdu/2785.cpp …


    Read More
    • ««
    • «
    • 1
    • 2
    • 3
    • 4
    • 5
    • »
    • »»

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