首页 > 其他分享 >寒假day1 2.2

寒假day1 2.2

时间:2024-02-02 11:33:47浏览次数:29  
标签:偏序 log 短路 三维 day1 枚举 寒假 2.2 排序

讲师:杨宁远,NOI2022Au,rk20,from 成都七中。

概括:基础算法。

6:30 起来和 bec 跑步,就跑了 5 min,还是很抽象的。

无调试网络,无qblt!

正题

枚举、搜索

方式:dfs bfs(迭代加深) 剪枝 A*

迭代加深:bfs的一种,每次所有 x 步在队列里,判断是否有终止局面,没有则进入下一层

A*:剪枝的一种,估价函数,判断是否有解/更优

loj537 DNA序列

发现字符集的大小只有 \(4\) ,所以所有合法的子串不超过 \(4^k\) 种,用桶记录一下即可。变成四进制压缩即可。(子串是连续的)

loj2148 栅栏

考虑对需要的木材排序,每次加进去搜,把提供的木材压缩。

k短路

先研究次短路

显然的结论:最短路和次短路是先一起走,后在一点分开的。

枚举 $(u,v),(u,v)\nin $ ,答案就是 \(\min(dis_{s,u}+w_{u,v}+dis_{v,t})\)。

我连 A* 都不会你让我听这个???

\(k+1\) 短路是通过 \(1\sim k\) 中的某一条路径修改一条边,后面最短路得到的。

loj2876 水筒

最小生成树:\(S\) 到 \(T\) 的路径上边权的最大值最小。

将城市之间的最短路视作边,做一棵最短路树即可。

定义一个城市 \(i\) 的区域 \(S\) 表示对于 \(j\in S\) ,\(j\) 最近的城市是 \(i\) ,且对于 \(k\nin S\) ,\(k\) 最近的城市不是 \(i\)。

后面听不懂。

骑士精神

枚举所有后继局面,如果当前步数+未还原白马数>=16 不合法。

分治

三维偏序

二维数点

考虑 x 排序,用树状数组求前缀和。

三维可以按照 x 排序后,用二维数点,\(O(n \log^2 n)\)。

\(k\) 维偏序:\(O(n\log^{k-1} n)\)。

loj2056 序列

变成三维偏序做,把三个的不等式变为两个不等式。

三维偏序:\(i\) \(a_i\) \(b_i\)。

直接对下标分治。

复杂度 \(O(n\log^2 n)\)。

标签:偏序,log,短路,三维,day1,枚举,寒假,2.2,排序
From: https://www.cnblogs.com/BYR-KKK/p/18002863

相关文章

  • KubeSphere 社区双周报|Fluent Bit 升级到 v2.2.2|2024.01.18-02.01
    KubeSphere社区双周报主要整理展示新增的贡献者名单和证书、新增的讲师证书以及两周内提交过commit的贡献者,并对近期重要的PR进行解析,同时还包含了线上/线下活动和布道推广等一系列社区动态。本次双周报涵盖时间为:2024.01.18-02.01。贡献者名单新晋KubeSpherecontribut......
  • 寒假碎碎念01
    让我想想这段时间都做了什么…周二之前的几天和实验室其他几个队员(chy、fa、lyy)还有教练讨论了一些对训练方式的改革,23号白天匆忙整理完PPT,晚上和大家讲了一下寒假训练的事项。周三周四做了一些题,一方面是想起来傅老师之前跟我说,“感觉你没有走出你的舒适圈”,于是就一拍脑门,加了......
  • 2.1寒假每日总结23
    最最简单的超级马里奥训练过程fromnes_py.wrappersimportJoypadSpaceimportgym_super_mario_brosfromgym_super_mario_bros.actionsimportSIMPLE_MOVEMENTimporttimefrommatplotlibimportpyplotaspltfromstable_baselines3importPPOenv=gym_super_mario......
  • 寒假生活指导24
    #coding:utf8#指定源代码编码格式为UTF-8frompyspark.sqlimportSparkSession#导入SparkSession类,用于创建和管理Spark应用上下文frompyspark.sql.functionsimportconcat,expr,col#导入SparkSQL中的函数,这里并未使用但可能在后续操作中用于数据转换或计算f......
  • 寒假训练2024/1/29
    2024/1/29codeforce921A-WeGotEverythingCovered!题意:输出一个字符串,使得所有前k个字母表示的长度为n的字符串都是这个字符串的子串。思路:这个题稍微猜想一下就可以,其实是个傻瓜题(为C题铺垫)。把前k个字母,输出n遍就行。#include<bits/stdc++.h>usingnamespacestd......
  • 2024.1.31寒假每日总结22
    算法题:2670.找出不同元素数目差数组-力扣(LeetCode)①NLP(NaturalLanguageProcessing),也就是人们常说的「自然语言处理」,就是研究如何让计算机读懂人类语言,即将人的自然语言转换为计算机可以阅读的指令。②分词是NLP任务的一个起始,分词的好坏会影响整体模型的好坏。并且分......
  • 1.31寒假每日总结22
    1)NLP基本概念①NLP(NaturalLanguageProcessing),也就是人们常说的「自然语言处理」,就是研究如何让计算机读懂人类语言,即将人的自然语言转换为计算机可以阅读的指令。②分词是NLP任务的一个起始,分词的好坏会影响整体模型的好坏。并且分词不一样,语义不一样。1. 中国北京大......
  • 寒假生活指导23
    url="https://aod.cos.tx.xmcdn.com/group28/M07/DE/F4/wKgJXFk8TBnQZJbDAGkx6deAu2c402-aacv2-48K.m4a"importrequestsresponse=requests.get(url)content=response.contentfile=open("第一章.mp3","wb")file.write(content)爬取听书......
  • Java学习日记 Day15 科目三终于考过了/(ㄒoㄒ)/~~
    昨天鸽了一天,备战科三来着/(ㄒoㄒ)/~~算法:①修建二叉搜索树:思路还是比较清晰的,如果当前节点小于给定的最低值,那就把当前节点换成他的右子叶,相反换成左子叶。然后递归对左右子树进行操作。②将有序数组转换为二叉搜索树:最简单的做法就一直增加左子树。但我们可以选择数组的中间......
  • 大三寒假学习进度笔记21
    今天看到了一道蓝桥杯的题目,其中使用到了dfs算法,在之前的数据结构中学习过这种算法,但是并没有在代码中使用过,因此根据给出的思路在写了一遍这个题目。#include<bits/stdc++.h>usingnamespacestd;inta[100],ans=0;boolvis[20240000];boolcheck(intdate){if(vis[d......