111qqz的小窝
Home
ACM-ICPC
深度学习 icon
caffe源码阅读笔记 推荐系统 计算机视觉
公开课 icon
6.828 CS341 CSAPP
工程 icon
cpp cuda levelDB源码笔记 linux 前端 图像处理 容器
随笔杂谈
面试
About
🌐
English Chinese
  • UOJ #103. 【APIO2014】Palindromes (回文自动机模板题)

    Nov 13, 2017 · 2 min read · 回文自动机

    http://uoj.ac/problem/103 题意: 给你一个由小写拉丁字母组成的字符串 s。我们定义 s 的一个子串的存在值为这个子串在 s 中出现的次数乘以这个子串的长度。 对于给你的这个字符串 s,求所有回文子串中的最大存在值。 思路: 回文自动机,也叫回文树,但其实并不是树2333,所以以后还是称为回文自动机,缩写为PAM 学会了(?)SAM之后再看PAM真是简单得一逼。 学习笔记之后补。 对于这道题,PAM中一个状态的cnt表示的该状态所表示的回文串出现的次数 len表示的是该状态所表示的回文串的长度 UPDATE: 下面的代码风格太丑了,打算弃用。 更新的代码风格见最后 #include …


    Read More
  • codeforces 123D. String(后缀自动机)

    Nov 13, 2017 · 5 min read · 后缀自动机

    题目链接:http://codeforces.com/problemset/problem/123/D 题意: 如果字符串y在字符串x中出现n次,那么F(x,y)=n*(n+1)/2 现在给一个字符串,求所有的F(s,x)的和,x为字符串的所有不相同的子串. 思路: 这道题可以考虑用后缀数组做,麻烦一点:codeforces-123D-解题报告(SA) 直接SAM right[v]就是SAM上状态表示的所有字符串出现的次数。 那么每个状态的答案就是right[v](right[v]+1)/2(st[v].len-st[st[v].link].len) 累加即可。 /* …


    Read More
  • poj 3415 Common Substrings (后缀自动机+parent树上的lazy标记)

    Nov 12, 2017 · 3 min read · lazy标记 后缀自动机

    http://poj.org/problem?id=3415 题意: 给出两个字符串,问公共长度大于等于k的子串个数(只要两个串的位置不同就认为是不同) 思路: 考虑SAM的性质。 SAM上的一个节点所能接受的本质不同的子串个数是**st[v].len - st[st[v].link].len** 而这些子串,都出现了right[v]次,因为不同子串的个数就是**(st[v].len-st[st[v].link].len)right[v]* 现在有了限制条件,要求长度大于等于k. 没有限制的话,SAM上的一个节点所能接受的字符串的长度范围是在[st[st[v].link].len+1,st[v].len] 那么现在范围其实就变成 …


    Read More
  • hdu 4416 Good Article Good sentence (后缀自动机)

    Nov 11, 2017 · 3 min read · 后缀自动机

    http://acm.hdu.edu.cn/showproblem.php?pid=4416 题意: 给出一个字符串A和n个字符串B,问A的子串中,不在任何一个B中出现的本质不同的子串有多少。 思路: 还是根据len搞事情 我们知道,如果不加任何条件,SAM中一个节点所表示的本质不同的子串数量是st[i].len - st[st[i].link].len 现在加了限制条件。 那么该状态中,有一些长度的字符串就会不满足条件。 我们考虑对母串A构建SAM 那么只需要维护B的所有串,对于某个状态能匹配的最大长度,设为maxlen,那么 长度为[maxlen+1,st[i].len]的字符串可以贡献答案。 如果maxlen为0,则该状态所表 …


    Read More
  • hdu 3518 Boring counting (后缀自动机)

    Nov 11, 2017 · 4 min read · 后缀自动机

    http://acm.hdu.edu.cn/showproblem.php?pid=3518 题意: 给一个字符串,问字符串中,至少出现2次且不相交的本质不同的子串有多少个。本质不同给的子串是说存在至少一位的字母不同。 思路: 考虑SAM SAM上的一个节点表示的是一段长度从[st[st[i].link],len+1,st[i].len]的字符串。 考虑其right集合,如果right集合中最大的r设为rightmost,最小的r设为leftmost. 那么如果rightmost-leftmost+1 > st[i].len ,说明什么呢? 说明该状态所表示的最长的字符串能够至少放下两个而不重叠。 即 …


    Read More
  • hdu 6059 | 2017 Multi-University Training Contest - Team 3 Kanade's trio (trie)

    Nov 11, 2017 · 2 min read · trie

    http://acm.hdu.edu.cn/showproblem.php?pid=6059 题意: 含 N 个数字的 A 数组,求有多少个三元组 (i,j,k) 满足 i<j<k 且a[i]^a[j] < a[j]^a[k] 思路: 考虑a[i]和a[k]二进制不同位中的最高位,此时满足题意的a[j]是该位与a[i]相同,其他位任意的所有a[j]的个数。 我们可以从1..n,依次插入a[k]到trie中,插入时,顺便用num[i][j]统计二进制第i位为j的数的个数。 当要插入a[k]时,a[1]..a[k-1]已经插入到了trie中。 trie上统计当某个节点,该位为0的数的个数和该为为1的数的个数。 需要注意 …


    Read More
  • hdu 5558 | 2015ACM/ICPC亚洲区合肥站 G Alice's Classified Message (后缀自动机)

    Nov 11, 2017 · 2 min read · 后缀自动机

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5558 题意: 说了一大堆。。其实就是询问位置i开始的后缀和以位置[0...i - 1]开始的所有后缀中最大匹配的公共前缀长度 思路: 这个动态的过程很容易想到SAM啊。。 所以就一边匹配。。一边构建SAM就好了。。 需要注意的是,如果有多个最长,需要输出最左边的位置。 因此多维护一个leftmost,表示某个字符串第一次出现的结尾的位置。 /* *********************************************** Author :111qqz Created Time :2017年11月08日 星期三 18 …


    Read More
  • SPOJ LCS2 Longest Common Substring 2[后缀自动机+dp]

    Nov 11, 2017 · 3 min read · dp 后缀自动机

    题意: 求n个串的最长公共子串,n<=10 思路: 不会啊orz 先放一波参考资料&题解好了。 codeforces_Understanding Suffix Automaton in depth code风景区_spoj_lcs2 code风景区_sam教学 candy SPOJ 1812 LCS2 [后缀自动机 DP] 首先参考下2个串的LCS的做法spoj-lcs 卧槽终于懂了... 一个串在上面走的时候记录与每个状态公共子串的最大值,注意**出现次数向父亲传递**,一个状态能到达说明了Suffix Link指向的状态可以取到最大子串,这一步对val后基数排序然后倒着更新就行了 ...代码之后补 关键是理解这句 …


    Read More
  • hdu 4819 2013 Asia Regional Changchun G (四叉树|| 二维线段树单点更新 模板题)

    Nov 9, 2017 · 5 min read · 二维线段树 四叉树

    http://acm.hdu.edu.cn/showproblem.php?pid=4819 题意: 给你一个n*n的矩阵, 每个点是一个数字, Q个操作,每次选择一个子矩阵, 把中心元素替换成子矩阵中最大值和最小值之和的二分之一。 思路: 显然是一个二维线段树..... 然而菜鸡如我,并没有写过二维线段树啊? 那怎么办呢 一首《凉凉》送给自己 然而我们还有四叉树2333 2A,写错一个地方。第一次写四叉树,orz #include <bits/stdc++.h> #define ms(a,x) memset(a,x,sizeof(a)) #define lowbit(x) (x&(-x)) using …


    Read More
  • hdu 4436 | 2012 Asia Tianjin Regional Contest str2int (dp+后缀自动机,多串建立)

    Nov 9, 2017 · 3 min read · 后缀自动机

    http://acm.hdu.edu.cn/showproblem.php?pid=4436 题意: 给出n个仅由数字组成的字符串,问n个字符串的所有不同子串的和。 思路: SAM水题 从初始状态开始,走过所有路径,就是该SAM表示的所有的(不重复)子串。 因此只需要从根节点按照拓扑序(这回是根据len从小到大)转移好了。 考虑num[i]表示从SAM中的init状态到i状态能表示的子串的数量。 dp[i]表示从SAM中的init状态到i状态所表示的子串对应的和(也就是到该节点的子串的答案) 那么对于SAM中一个u->v(其中u和v是状态,设转移边为j,j属于0..9)的转移 有num[v]+=num[u] dp[v] = …


    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