• 曼哈顿距离 \(\text{dist}(A,B)=|x_{A}-x_{B}|+|y_{A}-y_{B}|\) 可以拆成 \(\max\{x_{A}-x_{B}+y_{A}-y_{B},x_{A}-x_{B}-y_{A}+y_{B},-x_{A}+x_{B}+y_{A}-y_{B},-x_{A}+x_{B}-y_{A}+y_{B} \}\)。agc 034d

  • 走步数什么的构造题步数限制大约在 \(\log\) 级别可考虑二进制拆分(倍增构造)。arc 103b

  • \(x\bmod m\) 除了拆成 \(x-\lfloor\frac{x}{m}\rfloor\times m\) 还可以拆成 \(x-km,(k\in \mathbb{Z})\)。arc 111b

  • 像什么 第 \(i\) 个人对应第 \(p_{i}\) 个物品,\(p\) 是 \(1,\cdots,n\) 的一个排列这种,直接连边。arc 111c / some abc d

  • 对应上一条,这种情况连边一定是一个这样 \(i\rightarrow p_{i}\rightarrow p_{p_{i}}\rightarrow\cdots\rightarrow i\) 的环。arc 111c

  • 一个平面上有一堆点 \((x_{1},m),(x_{2},m),\cdots,(x_{n},m)\)(\(x_{i}\) 单调递增),找一点 \((n,m)\) 使得 \(\sum\text{dist}((x_{i},m),(n,m))\) 最小,则 \(n\) 的取值范围是

    \([a_{\lfloor\frac{n+1}{2}\rfloor},a_{\lfloor\frac{n+2}{2}\rfloor}]\)。cf 1486b

  • 字符串本质不同子串数:\(\sum_{i=1}^{n}n-sa_{i}-ht_{i}+1=\sum_{i=1}^ni-ht_i\) / \(\sum_{i=0}^{n-1}n-sa_i-ht_i=i+1-ht_i\)。bzoj 4310

  • 把字符串反转后插入 SAM 后,两个原串的后缀在 parent tree 上的 LCA 是这两个后缀的 LCP。bzoj 3879

  • 对于树上/图上/序列上数某些个点中满足一些条件的点的个数(像 LCA、重心 之类的),考虑一个点能作为满足条件的点几次。plural

  • 我们记一个结点 \(u\) 的重儿子为 \(hb_{u}\),对于 \(\text{subtree}(u)\),如果 \(u\) 不是 \(\text{subtree}(u)\) 的 centroid,那么 \(\text{subtree}(u)\) 的 centroid 一定在 \(\text{subtree}(hb(u))\) 里。csp 2019 centroid

  • 根据上一条,我们可以直接倍增找重心(注意只能从根开始找)。csp 2019 centroid

  • 值域比较小的关于值域的一些不等或等量关系的题可以考虑把值域放到指数构造生成函数。hk 2016 a+b problem

  • \(i\times j=\binom{i+j}{2}-\binom{i}{2}-\binom{j}{2}\)。loc 28870

  • 答案和阶乘相关的,并且模数长得很怪,比如 \(998857459=461\times773\times2803\) 这种,当 \(i\ge2803\) 时,\(i!\bmod998857459=0\)。loc 28853

  • BST 相关,序列有序,\([l,r]\) 对应 BST 上一棵子树,且其父结点一定是 \(l-1\) 或 \(r+1\),具体是哪个要看大小讨论。cf 1025d

  • 序列分段可以先考虑平方 DP 再优化。csp 2019 partition / ctsc 2012

  • 有多个关键字的 DS 题可以考虑离线按一个关键字排序。lg p3247

  • 找递推关系可以考虑差分。lg p6156

  • \(low_{y}\leqslant dfn_{x}\) 意味着 \(x,y\) 在一个环。plural

  • \(a\&b+a\oplus b=a|b\); \(a\&b+a|b=a+b\);\(a+b=a\oplus b+2(a\&b)\)。cf 1451e1

  • \(fib(n+m)=fib(n+1)fib(m)+fib(n)fib(m-1)\)。cf 446c

  • 棋盘向 下 / 右 走,很有些性质和 \(n+m\) 有关,且移动一次 \(i+j\) 加一,不会存在移动一次 \(i+j\) 还是 \(i+j\)。同时在一条从右上往左下的对角线上的点 \(i+j\) 相同。arc 120b

  • 操作类似于令 \(a(i)\leftarrow a(i)-1,a(i+1)\leftarrow a(i+1)+1\) 然后交换 \(a(i),a(i+1)\) 的,本质是保证下标,令 \(A(i)=a(i)+i\) 可以使问题简化。arc 120c

  • 在 \(n\) 个元素中连边如果行不通不妨考虑每个元素内部连边。sgu 101 / abc 209e

  • 有多个元素分别对答案贡献时,如果单个元素的贡献很好算,不妨考虑每个元素的贡献次数。many e.g. abc 209f

  • 出现 \(a\mod p=b\mod p\) 时,等价于 \(a-b\equiv0\pmod p\),对应到 \(a_i\equiv a_{i+1}\equiv\dots\equiv a_j\pmod p\),就考虑差分。cf 1548b (cf 1549d)

  • 出现形似 \(a\times b\) 为完全平方数的限制时,考虑消除平方因子,弱化成 \(a=b\)。cf 840c

  • \(\gcd(a,b)=\gcd(a+kb,b)\)。unknown

  • \(\sum_i\sum_j[(i,j)=x]=\varphi(\lfloor\frac{N}{x}\rfloor)\times2-1\)。

  • 当 \((a,b)=1\),\((a^i-b^i,a^j-b^j)=a^{(i,j)}-b^{(i,j)}\)。

  • 如果一个函数 \(f(x)\) 的 \(k\) 阶差分是一个非零常数那么 \(f(x)\) 一定是一个 \(k\) 次多项式。

  • 若题目为序列的变化,考虑构造终止情况。

  • dp 刷表看看转移范围是否连续,可以看是否能整体 dp 维护。

  • 同一个图的 MST 每种权值的边的数量是一定的。cf 891c

  • 区间操作考虑差分(指题目中对各种序列的操作,不是那种数据结构题)。cf 1120d

  • 数列全为零等价于差分序列全为零。cf 1634f

  • 判定一个点是否在多边形内可由这个点以任意斜率拉出一条射线,看交点奇偶性。cf 375c

  • 数的出现次数的 mex 可以暴力求。cf 940f

  • 排列题可以放在逆排列里考虑,重新描述问题。wc 2022 rrads

  • 上上一条,不同出现次数的级别是根号,很多时候都可以考虑暴力。cf 1476g

  • 出现概率的和式考虑事件是否独立构造组合意义。cf 1523e

  • 和式 = 某个数,考虑看成某个数个 1 然后分配(精度思维)。hdu 7060

Record -「Tricks」记录的更多相关文章

  1. 所有 Python 程序员必须要学会的「日志」记录。

    本文字数:3840 字 阅读本文大概需要:10 分钟 写在之前 在我们的现实生活中,「日志记录」其实是一件非常重要的事情,比如银行的转账记录,汽车的行车记录仪记录行驶过程中的一切,如果出现了什么问题, ...

  2. 「2014-2-6」TokuMX and MongoDB related materials collection

    简介参考 TokuMX 和 MongoDB 各自的官方站点.       ##  Tokutek 最重要的特点和 marketing word 是所谓 fractal tree indexing te ...

  3. 「MoreThanJava」计算机发展史—从织布机到IBM

    「MoreThanJava」 宣扬的是 「学习,不止 CODE」,本系列 Java 基础教程是自己在结合各方面的知识之后,对 Java 基础的一个总回顾,旨在 「帮助新朋友快速高质量的学习」. 当然 ...

  4. 「译」JUnit 5 系列:条件测试

    原文地址:http://blog.codefx.org/libraries/junit-5-conditions/ 原文日期:08, May, 2016 译文首发:Linesh 的博客:「译」JUni ...

  5. 「2014-3-18」multi-pattern string match using aho-corasick

    我是擅(倾)长(向)把一篇文章写成杂文的.毕竟,写博客记录生活点滴,比不得发 paper,要求字斟句酌八股结构到位:风格偏杂文一点,也是没人拒稿的.这么说来,arxiv 就好比是 paper 世界的博 ...

  6. 「2014-3-17」C pointer again …

    记录一个比较基础的东东-- C 语言的指针,一直让人又爱又恨,爱它的人觉得它既灵活又强大,恨它的人觉得它太过于灵活太过于强大以至于容易将人绕晕.最早接触 C 语言,还是在刚进入大学的时候,算起来有好些 ...

  7. 「2013-9-5」Configure WingIDE for better display of East Asian Glyphs

    很久没写软件配置相关的博客了.这次对于 WingIDE 在 Windows 下的字体配置,折腾了好一阵子,略曲折,也反映了「不清楚原理和背景的情况下,盲人摸象的效率低下是必然」这条放之四海而皆准的赤果 ...

  8. React + Node 单页应用「二」OAuth 2.0 授权认证 & GitHub 授权实践

    关于项目 项目地址 预览地址 记录最近做的一个 demo,前端使用 React,用 React Router 实现前端路由,Koa 2 搭建 API Server, 最后通过 Nginx 做请求转发. ...

  9. 「插件」Runner更新Pro版,帮助设计师远离996

    三年多前Runner团队在德国汉堡的骇客松上第一次发布了Sketch插件Runner的beta版本.从那以后,这个团队的目标一直很清晰: 创造一个加速设计工作流的工具. 他们只给Runner添加真正能 ...

  10. 「NOI2013」小 Q 的修炼 解题报告

    「NOI2013」小 Q 的修炼 第一次完整的做出一个提答,花了半个晚上+一个上午+半个下午 总体来说太慢了 对于此题,我认为的难点是观察数据并猜测性质和读入操作 我隔一会就思考这个sb字符串读起来怎 ...

随机推荐

  1. C++面试八股文:C和C++有哪些区别?

    某日小二参加XXX科技公司的C++高级工程师开发岗位1面: 面试官:请问C和C++的区别有哪些? 小二:C++是C的超集. 面试官:还有吗? 小二:... 面试官:面试结束,回去等消息吧. 小二:淦. ...

  2. element-ui Tabs 标签页刷新页面状态不丢失

    element-ui Tabs 标签页刷新页面状态不丢失 转载请表明出处 https://www.cnblogs.com/niexianda/p/14765111.html 效果 一般在使用Tabs组 ...

  3. C++面试八股文:什么是左值,什么是右值?

    某日二师兄参加XXX科技公司的C++工程师开发岗位第16面: 面试官:什么是左值,什么是右值? 二师兄:简单来说,左值就是可以使用&符号取地址的值,而右值一般不可以使用&符号取地址. ...

  4. 基于uniapp+vite4+vue3搭建跨端项目|uni-app+uview-plus模板

    最近得空学习了下uniapp结合vue3搭建跨端项目.之前也有使用uniapp开发过几款聊天/仿抖音/后台管理等项目,但都是基于vue2开发.随着vite.js破局出圈,越来越多的项目偏向于vue3开 ...

  5. 免杀系列之利用blockdlls和ACG保护恶意进程

    blockdlls Cobalt Strike 3.14版本以后添加了blockdlls功能,它将创建一个子进程并限定该子进程只能加载带有Microsoft签名的DLL. 这个功能可以阻止第三方安全软 ...

  6. Redis缓存同步1-策略介绍

    缓存数据同步策略示意图 在大多数情况下,我们通过浏览器查询到的数据都是缓存数据,如果缓存数据与数据库的数据存在较大差异的话,可能会产生比较严重的后果的.所以,我们应该也必须保证数据库数据.缓存数据的一 ...

  7. Linux网络设备命名规则简介

    Linux网络设备命名规则简介 几年前, Linux内核为网络接口分配名称采用的是一种简单和直观的方式:一个固定的前缀和一个递增的序号.比如,内核使用eth0名称以标识启动后第一个加载的网络设备,第二 ...

  8. 【小小demo】Springboot + Vue 增删改查

    vue-table-ui 该工程提供的是 一个简单的 Vue + Element-UI 的表格,增删改查操作. 工程代码在最下面. 环境 jdk1.8 idea maven springboot 2. ...

  9. python学习笔记:第九章异常

    1.1 异常是什么 python使用异常对象来表示异常状态,并在遇到错误时引发异常.异常对象未被处理,程序将终止并显示一条错误信息. 我们可以通过各种方法引发和捕获错误,并采取对应措施. 1.2 将& ...

  10. 【原创】Ftrace使用及实现机制

    Ftrace使用及实现机制 版权声明:本文为本文为博主原创文章,转载请注明出处 https://www.cnblogs.com/wsg1100 如有错误,欢迎指正. 目录 Ftrace使用及实现机制 ...