80th 2023/11/12 NOIP Day-5

停课训练的第一天,还有六天NOIP

抓紧训练

记录下今晚小小的思考,有部分偏于思维漏洞

  1. 用栈模拟一类题,就是一串数中删掉中间一部分数,然后若要将两边重新连上,之前要么花大时间重新赋值,要么用链表导致失去直接用数组O(1)访问的功能,现在发现还可以用栈,若没有在线修改,那么可以从左往右顺序加入,出现了要删的就弹出,每个数一进一出时间是O(n),类似是单调队列的思路
  2. 状压DP思维上的束缚:总是觉得一定要有一个图,然后能让我一行行一列列去算,才会想到状压DP,亏昨天晚上xmoj.tech的比赛,暴露出了我之前没改完题导致的一点漏洞,这道题是状压DP,看到数据n14就差不多能够猜得到是状压,但看题是真的不知道,当时在思考关于全排列的DP,但全排列的时间复杂度还是很大的,而且康托展开也无能为力因为状态本来就多,如何把一道关于排列顺序的题转化为状压DP?之前传统的状压DP是一行行考虑,这里可以改成一个个考虑,Fi,j表示当前已经加入了哪些点(状态j),然后第i个点现在是放在左边还是右边,然后枚举状态是O(n·2n),暴力转移是O(n),就是三百万左右的时间复杂度,轻松通过
  3. 关于数位DP:才发现关于求答案一没想通,其实很简单,处理完状态后,再从上一层转移一遍成答案需要的就行了
posted @   Far_delivery  阅读(55)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
历史上的今天:
2022-11-14 51st 2022/11/12 模拟赛总结36
点击右上角即可分享
微信分享提示