对于类似构造方案的题目,先确定其中一些关键位置的方案,然后看是否能较为简单地推出其他位置的方案。

一个长度为 \(n\) 的序列,满足

\[a_1\le-a_4\le a_7\le-a_{10}\le\cdots\\
a_2\le-a_5\le a_8\le-a_{11}\le\cdots\\
a_3\le-a_6\le a_9\le-a_{12}\le\cdots
\]

有 \(q\) 次询问,每次给出 \(l,r\),问通过 \(+1,-1\) 操作使得区间 \([l,r]\) 满足 \(a_i=a_{i-1}+a_{i+1}\) 的最小代价。

\(n,q\le 10^5\)


对于类似构造方案的题目,先将大部分位置以相对粗糙的方式调为合法,此时最后几个位置限制会增多些,这时候再精细讨论。

给定两个长为 \(n(n>5)\) 的字符串 \(S,T\),字符集是 \(\{R,W,Y\}。\)

令 \(L_i=i-1,R_i=i+1\) ,特别的,\(L_1=n,R_n=1\)。

如果 \(S_{L_i}\neq S_{R_i}\) ,那么你可以自由修改 \(S_i\)。

求一种方案使得 \(S=T\)。


对于题目贡献是 \(\frac{x}{y}\) 这种形式,可以看成斜率,维护凸包来处理。

一个长为 \(n\) 的序列,区间 \([l,r]\) 的贡献是 \(\frac{\sum_{i=l}^r x_i}{r-l}\),\(q\) 个询问,每次给出 \(l,r\),为该区间贡献最大的子区间。

\(n\le 10^5,q\le3\times10^4\)


对于题目贡献是 \(\frac{x}{y}\) 这种性质,可以通过假定答案,从而实现移项去掉分数,然后 check 是否能达到。

有一张点数为 \(n\) 的完全图,从中选 \(n\) 条边 \((x,y)\),要求每个点作为 \(x,y\) 各恰好一次,令 \(\frac{\sum a_{x,y}}{\sum b_{x,y}}\) 最大。


对于要在若干对点之间连线,按距离算贡献的题目,一种设状态的方式是当前还有多少线悬在空中,也是一种提前算费用

数轴上有 \(n\) 个红点,\(m\) 个蓝点,要求每个点至少和一个异色点连线,代价是距离,求最小代价。

\(n,m\le10^5\)


对于构造类题目,有 \(x\) 种颜色,\(y\) 的限制,一种满足限制的构造技巧是 \(y^x>n\)

一个 \(n\) 个点,\(m\) 条边的 DAG,用三种颜色给 \(m\) 条边染色,要求连续的同色边不能到 \(42\) 条。

\(n\le5\times10^4,m\le2\times10^5\)


对于要求字符串本质不同的题目,都可以丢到相应的自动机上。

求本质不同回文子序列。

\(n\le5000\)


对于多串的匹配相关题目,往往要依靠 AC 自动机去重,然后来实现。

给定正整数 \(m\) 以及 \(n\) 个 \(01\) 串 \(s_1\sim s_n\),你需要求出长度为 \(2m\) 的反对称的包含这 \(n\) 个 \(01\) 串作为子串的 \(01\) 串的个数。对 \(998244353\) 取模。

一个 \(01\) 串 \(s\) 是反对称的当且仅当它对于 \(1\le i\le |s|\) 都满足 \(s[i]≠s[|s|-i+1]\)。

\(n\le6,|s|\le100,m\le500\)


对于线段树每个节点都要倍增,因此复杂度过高,可以将线段树补成每个节点都是 \(2^n\),就只要倍增一次。

一开始先给出 \(n\) 个字符串 \(T_i\),再给出字符串 \(S\),然后进行操作。

一共操作 \(Q\) 次,分为两种:

1 l r str:把 \(S\) 的区间 \([l,r]\) 的字符串修改为字符串 \(str\) 不停重复的结果。

2 l r:询问 \(T_1\sim T_n\) 在 \(S\) 的区间 \([l,r]\) 中一共出现了几次。

注意每次修改对之后的操作是有影响的。

保证所有 \(T_i\) 插入一个字典树后,字典树大小不超过 \(50\).

\(n≤50,Q≤100000,|S|≤100000\),所有修改操作的 \(str\) 的长度总和不超过 \(|S|\)。


对于字典序大小相关的题目,考虑第一个不同的位置来比较字典序。

给定一个 \(n\) 个元素的 \(k\) 叉堆,权值是一个排列,问在所有的权值是一个排列的 \(k\) 叉堆中,给出的堆的字典序排名。

\(n,k\le 3000\)


对于维护一段合法前缀类的问题,可以用线段树二分。

给出一个 \(n\) 个点的树,权值为 \(0\sim n-1\) 的一个排列,问最大路径 \(\rm{mex}\) 的多少。

每次修改是交换两个点的权值,多次询问。

\(n\le2\times10^5\)


在 \([1,V]\) 中随机选 \(n\) 个数,第 \(k\) 小的期望大小是 \(\frac{k}{n}V\).

给出 \(n\) 个点,\(m\) 条边的 DAG,问每个点能到几个点。

\(n,m\le10^6\).


对于排序不影响答案的题目,不妨先排序。

给出若干正方体堆砌的主视图和左视图,求所有方案的正方体个数之和。

\(n,m\le5\times10^5\)


需要二分图染色的结果,建图只要连通即可。

给一个排列做双栈排序,判断是否可行,并输出字典序最小的方案。

\(n\le 10^5\)。


对于每组选一个数,不同组贡献为乘积的数,可以用类似生成函数的方式表示+维护。

你有 \(n\) 个正整数,第 \(i\) 个在集合 \(B_i\) 中均匀独立随机。

然后按照结果最大的顺序把 \(a_1\sim a_n\) 拼起来,求最大结果的期望值。

\(n\le2333,\sum|B_i|\le23333,|S|\le1919810\).


求形如 \(\sum a_i^2\) 类的东西,可以一对一对考虑。

黑盒子里有 \(nk\) 个白球,重复 \(n\) 次操作:放入 \(k\) 个黑球,取出 \(2k\) 个球.

记 \(E(i)\) 表示第 \(i\) 次操作期望意义下取出的黑球数,求:\(\sum E(i^2)\)

\(n\le 10^6, k\le 100\).


两个图叠加后,重心位于两个原重心的路径上。

树的 dfs 序列的带权重心一定在树的带权重心的子树中。

给你一棵 \(n\) 个点的树,支持子树加和链加,询问每次修改后的带权重心。

\(n,q\le 3\times 10^5\)

[总结] 零散的 tricks的更多相关文章

  1. Android零散

    2016-03-13 Android零散 ListView中嵌套GridView 要实现分组列表这样的效果:点击ListView中的分组名称,即展开此分组显示其包含的项目.使用ExpandableLi ...

  2. testng 教程之使用参数的一些tricks配合使用reportng

    前两次的总结:testng annotation生命周期 http://www.cnblogs.com/tobecrazy/p/4579414.html testng.xml的使用和基本配置http: ...

  3. (转) How to Train a GAN? Tips and tricks to make GANs work

    How to Train a GAN? Tips and tricks to make GANs work 转自:https://github.com/soumith/ganhacks While r ...

  4. Matlab tips and tricks

    matlab tips and tricks and ... page overview: I created this page as a vectorization helper but it g ...

  5. LoadRunner AJAX TruClient协议Tips and Tricks

    LoadRunner AJAX TruClient协议Tips and Trickshttp://automationqa.com/forum.php?mod=viewthread&tid=2 ...

  6. 【翻译】C# Tips & Tricks: Weak References - When and How to Use Them

    原文:C# Tips & Tricks: Weak References - When and How to Use Them Sometimes you have an object whi ...

  7. 零散知识记录-一个MQ问题

    [背景]我有一项零散工作:维护大部门的一台测试公用MQ服务器.当大部分MQ被建立起来,编写了维护手册,大家都按照规程来后,就基本上没有再动过它了.周五有同学跟我反映登录不进去了,周日花了1个小时来解决 ...

  8. 神经网络训练中的Tricks之高效BP(反向传播算法)

    神经网络训练中的Tricks之高效BP(反向传播算法) 神经网络训练中的Tricks之高效BP(反向传播算法) zouxy09@qq.com http://blog.csdn.net/zouxy09 ...

  9. iOS网络相关零散知识总结

    iOS网络相关零散知识总结 1. URL和HTTP知识 (1) URL的全称是Uniform Resource Locator(统一资源定位符). URL的基本格式 = 协议://主机地址/路径   ...

随机推荐

  1. unable to resolve class XXX

    > Task :HelloWorld_Web:compileGroovy startup failed: E:\GradleDemoManyModules\ExampleHelloWorld\H ...

  2. 解释 Spring 框架中 bean 的生命周期?

    Spring 容器 从 XML 文件中读取 bean 的定义,并实例化 bean. Spring 根据 bean 的定义填充所有的属性. 如果 bean 实现了 BeanNameAware 接口,Sp ...

  3. 使用 Redis 有哪些好处?

    1.速度快,因为数据存在内存中,类似于 HashMap,HashMap 的优势就是查 找和操作的时间复杂度都是 O1) 2.支持丰富数据类型,支持 string,list,set,Zset,hash ...

  4. spi协议

    1. 概述 SPI = Serial Peripheral Interface,是串行外围设备接口,是一种高速,全双工,同步的通信总线.常规只占用四根线,节约了芯片管脚,PCB的布局省空间.现在越来越 ...

  5. 6_比例积分控制器_PI控制

  6. html5中常被忘记的标签,属性

    placeholder placeholder是input中的属性,就是默认输入的text,当用户输入时,text会被清空. 用法 <input type ="text" p ...

  7. hdfs对文件的增删改查

    源代码: pom.xml: <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&qu ...

  8. CentOS系统Tomcat 8.5或9部署SSL证书

    本文档介绍了CentOS系统下Tomcat 8.5或9部署SSL证书的操作说明. 环境准备 操作系统:CentOS 7.6 64位 Web服务器:Tomcat 8.5或9 前提条件 已从阿里云SSL证 ...

  9. setTimeout中第一个参数

    永远不要传递字符串作为setTimeout的第一个参数!!!记住第一个参数只允许函数,或者匿名函数!因为传递字符串有陷阱啊!!它就是披着羊皮的eval啊!!而且上下文会变成全局啊!! 第一个参数为可执 ...

  10. 关于data自定义属性

    新的HTML5标准允许你在普通的元素标签里,嵌入类似data-*的属性,来实现一些简单数据的存取.它的数量不受限制,并且也能由JavaScript动态修改,也支持CSS选择器进行样式设置.这使得dat ...