一些 trick 和思考收获
2023.1.7 P1117 优秀的拆分
对于一眼看上去只能直接求解的题可以设置一些节点变为求每个节点的贡献
*2023 7.24 补充:这个 trick 也被称为设置关键点,通常用于区间长度固定或是有下界,每个区间必然跨过若干个关键点,可以考虑预处理关键点信息
2023.1.8 P1712 区间
如果题目有好几个条件,满足再求解的顺序可以经常替换,不要只想着满足一个然后根据另外一个求
线段树先考虑能不能标记永久化,如果可以就不要写lazytag
2023.1.19 CF1037H Security
线段树合并可以解决很多有集合包含关系的判断问题
2023.1.19 P4770 你的名字
对于子串统计题,可以转化为统计前缀或后缀最长合法长度再乘起来
2023.2.2 P7518 宝石
需要用的状态较多且存在转移对象即为存储对象时,可以使用倍增
2023.2.6 P4870 甲虫
设计状态时可以考虑反向思考,如最大获得改为最小失去,并且可以外层枚举减少状态
2023.4.4 P9168 人员调度
数据结构比较多的时候先列个表整理一下思路再写
2023.4.13 P3750 分手是祝愿
有的修改操作类似开关灯,只有两种状态,是单向的且可以修改当前节点,倒序做一定能全部关灯,就如线性基
2023 5.18 P5607 无力回天
区间修改的几个技巧:差分,分块
2023 5.22 AT_agc001_e BBQ hard
注意到 \(\binom{x+y}{x}\) 可以理解为从 \((0,0)\) 点走到 \((x,y)\) 的路径个数,因为我们一共要走 \(x+y\) 次,从中选择 \(x\) 次向右走,由此加上对于坐标系的平移便可解出此题。
2023 6.14 P8867 建造军营
计数类题目为了排除重复,一个很重要的思考方向是反向思考,考虑每种情况分别在哪里被统计而不是我们怎么统计,本题中在一个子树内都是军营且子树大小最小的节点处统计,如果有向上连边则一直往上跳到上面统计,只要保证对于每种情况都只有一个统计点即可。
2023 7.24
FMT 本质上是高位前缀和,枚举的位次本质上是维度,所以可以任意交换顺序,max 卷积则是一位前缀和,二者都是对原序列的一种线性变换。
一个关于树的重心的 trick 是它必然是 dfs 序(每个点出现两次)中中位数(或带权)的祖先节点,因此可以做到切除某一子树后 \(\log\) 的复杂度求重心,具体做法为在从当前节点到根的路径上二分。
2023 8.25 CF1503A Balance the Bits
想到一个构造式子不要立马抛弃,先考虑一些无解情况,没有也许就是对的
2023 8.25 CF1503C Travelling Salesman Problem
对于类似旅行商问题这种要走遍所有点求最小花费的问题,更换起点后问题等价,可以选择一个需要考虑的限制/花费种类较小的点
一些 trick 和思考收获的更多相关文章
- 房间计费系统改造E-R图纸设计
简单的学习过程: 这几天忙得太混乱了,用了近一个星期才设计好.我在这段时间遇到的困难,就积极找师哥师姐指点迷津,如今多少总算是有些拿得出手的成果. 学习成果: Entity Relations ...
- FCN用卷积层代替FC层原因(转)
原博客连接 : https://www.cnblogs.com/byteHuang/p/6959714.html CNN对于常见的分类任务,基本是一个鲁棒且有效的方法.例如,做物体分类的话,入门级别的 ...
- 参加AWS技术峰会的收获与思考
7月31日,我参加了AWS 技术峰会2019北京站的会议. 从厦门到帝都,奔赴千里,只为一场技术盛宴,我想记录一些收获和思考,才能不负此行. 大会议程全天,上午是主题演讲和行业解决方案展示,下午是技术 ...
- codefroces中的病毒,这题有很深的trick,你能解开吗?
大家好,欢迎阅读周末codeforces专题. 我们今天选择的问题是contest 1419的C题,目前有接近8000的人通过了本题.今天这题的难度不大,但是真的很考验思维,一不小心就会踩中陷阱,我个 ...
- 万字长文---关于PKM收集与整理系统的思考和实践
PKM闭环中有一个很重要的环节就是信息输入,包括各种信息来源,例如微信公众号.博客.知乎.RSS等等,因此也就诞生了一大堆稍后读软件,如何真正有效的获取输入而不是做一只仓鼠是需要思考的.最近看了< ...
- 技能收获与C语言学习
你有什么技能比大多人(超过90%以上)更好? 我会的东西很多,喜欢的东西太多,但是很遗憾广而不专,会而不精.学了很多东西我都是为了娱乐,因为以前我们那里过于强调学习,很多爱好也都被扼杀在摇篮里.我觉得 ...
- 不管你以后写不写JS,都应该学会这种思考方式
昨天在网上看到了一篇文章说程序员写不过35这种说法,但事实上,确实并不能每个人都像我一样,在写JS中找到乐趣,就乐意写这东西直到50岁眼瞎为止. 那肯定有人要问,也许我不仅写JS写不到35,可能我连3 ...
- 【腾讯bugly干货分享】解耦---Hybrid H5跨平台性思考
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://bugly.qq.com/bbs/forum.php?mod=viewthread&tid=1275& ...
- 由一段JS代码引发的思考
不知道大家在编程的时候有没有遇到过这种情况,就是在循环遍历删除一部分内容的时候,发现只能删除其中一部分,而另一部分却总也删不掉,然后觉得自己的逻辑没有问题啊,于是陷入了深深的抑郁之中…… 昨天在处理一 ...
- 《ODAY安全:软件漏洞分析技术》学习心得-----shellcode的一点小小的思考
I will Make Impossible To I'm possible -----------LittleHann 看了2个多星期.终于把0DAY这本书给看完了,自己动手将书上的实验一个一个实现 ...
随机推荐
- Day01_Java作业
A:选择题 1:下列标识符哪个是合法的(a) A.class B.$abc C.1234 D.Car.taxi B:填空题 1: java源程序的扩展名是( .java ) 2: java程序经编译后 ...
- (五) MdbCluster分布式内存数据库——数据迁移架构及节点扩缩容状态图
(五) MdbCluster分布式内存数据库--数据迁移架构及节点扩缩容状态图 上一篇:(四) MdbCluster分布式内存数据库--业务消息处理 本节主要讨论在系统扩容期间的数据迁移架构及节点的状 ...
- RAT蓝队自动化测试框架
RAT蓝队自动化测试框架 介绍 RAT 是根据 MITRE ATT&CK 战术矩阵测试蓝队检测能力的脚本框架,由 python2.7 编写,共有 50 多种不同 ATT&CK 技术点和 ...
- Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-4_w0c665/PyQt5/
错误: 解决方式:输入一下命令 1 pip3 install --upgrade setuptools 2 python3 -m pip install --upgrade pip 输入命令: 1 p ...
- 【工具】-Misc-Python-dsstore
介绍 这是一个.DS_Store解析工具. 什么是.DS_Store .DS_Store 是 Desktop Services Store 的缩写,是 macOS 操作系统上的一个不可见文件,只要您使 ...
- PE文件结构1
引言 PE文件格式是Windows操作系统下的可执行文件的格式,包括.exe文件和.dll文件,通过PE文件格式的学习,可以帮助我们更加熟悉有关Windows系统下的逆向分析和PC端病毒的学习,同时P ...
- Spring面试攻略:如何展现你对Spring的深入理解
什么是Spring?谈谈你对IOC和AOP的理解. Spring是一种Java开发框架,旨在简化企业级应用程序的开发和部署.它具有以下优点: 对象托管:Spring能够管理和赋值所有对象,使开发人员不 ...
- Java中锁的简单使用体验
锁是控制多个线程访问共享资源的一种同步机制. synchronized:可以将代码块或方法设置为同步. ReentrantLock:提供了比synchronized更广泛的锁操作函数. ReadWri ...
- 论文解读(AdSPT)《Adversarial Soft Prompt Tuning for Cross-Domain Sentiment Analysis》
Note:[ wechat:Y466551 | 可加勿骚扰,付费咨询 ] 论文信息 论文标题:Adversarial Soft Prompt Tuning for Cross-Domain Senti ...
- Burp Suite Extension Development Guide
Burp Suite是什么? Burp Suite是一款Web应用程序渗透测试工具,可以帮助用户发现和利用Web应用程序中的漏洞,提高渗透测试的效率和精度. Web应用程序最常用的传输数据的协议就是H ...