• 2024-11-21一类限制转化方法
    一类限制转化方法如果\(\forallx\),满足条件\(A(x)\)成立,即全局限制\(\forallx,T=\{y|y\precx\}=\emptyset,A(x)=1\),即边界节点必成立。若\(\forallx,\existsT_x\),使得\(\forally\inT_x,y\precx,A(y)\landB(x,y)\impliesA(x)\),即条件可以转移则等价于
  • 2024-11-19「模拟赛」多校 A 层冲刺 NOIP 24
    A.选取字符串KMP、字符串好题因为所有字符串都是大字符串的前缀,所以一旦我们每个字符串的前缀后缀的长度确定了,那么前缀后缀长什么样也就确定了设\(f_i\)为所有相同前缀后缀长度可以为\(i\)的字符串的个数我们枚举\(i\in[1,n]\),每次钦定两个串\(p、q\)里必须有一个是
  • 2024-11-15【C++源码编译】
    C++源码到二进制可执行文件的过程与C语言类似,包括四个过程:预编译、编译、汇编、链接1、预编译C/C++编译过程中的第一个阶段,主要目的是对源代码进行处理和准备工作。下面是预编译的主要步骤:去除宏定义:将所有的#define删除,并展开所有的宏定义,将宏替换为具体的值或表达
  • 2024-11-15P11276 第一首歌 题解
    P11276第一首歌题解一道简单的字符串题目。题目解释说求一个最短的字符串\(t\),使其满足对于给定的字符串\(s\):\(s\)为\(t\)的前缀。\(s\)为\(t\)的后缀。\(s\)不为\(t\)。仔细思考一下,则易得\(t\)的最短长度的最大值为\(s\)的两倍。即当\(s\)
  • 2024-11-14网页直播/点播播放器EasyPlayer.js无插件H5播放器关于其后地址不带协议后缀的判断逻辑
    EasyPlayer.jsH5播放器,是一款能够同时支持HTTP、HTTP-FLV、HLS(m3u8)、WS、WEBRTC、FMP4视频直播与视频点播等多种协议,支持H.264、H.265、AAC、G711A、Mp3等多种音视频编码格式,支持MSE、WASM、WebCodec等多种解码方式,支持Windows、Linux、Android、iOS全平台终端的H5播放器,使用简
  • 2024-11-13[题解]CF1407D Discrete Centrifugal Jumps
    思路注意到第二个条件和第三个条件本质相似,可以用相同的维护方式处理,因此这个只讨论第二个条件的维护方式。定义\(dp_i\)表示走到\(i\)的最少步数。第一个条件的转移显然为\(dp_i\leftarrowdp_{i-1}\)。对于第二个条件,\(i\)能向\(j\)转移,当且仅当\(h_{i+1\sim
  • 2024-11-11c中的文件管理
    大家好,今天我们来看看语言中的文件管理,聊到这个,我们就得先说说文件的特点。1.文件是一种让数据持久化的方法,使用文件可以将数据直接存放在电脑的硬盘上,做到数据持久化。那么什么是文件呢?硬盘上的是文件,但是在程序设计中,我们一般谈的文件有两种,一种是程序文件,一种是数据文件(
  • 2024-11-11如何选择适合的域名后缀
    选择适合的域名后缀,需要考虑多个因素以确保域名与品牌形象、目标受众和网站目的相匹配。以下是一些关键要点:‌目标受众和品牌形象‌:根据网站内容和目标用户群体选择合适的域名后缀。例如,.com后缀广泛被认可,适合各种类型的网站,有助于提升品牌形象和公信力‌。不同的域名后缀
  • 2024-11-11后缀排序
    后缀排序即对字符串\(S\)的所有后缀根据字典序排序实现算法1:暴力排序直接\(O(n)\)比较,时间复杂度\(O(n^2\logn)\)算法2:倍增优化我们考虑长为\(2^k\)的串的比较,该串可以分为前后均长\(2^{k-1}\)的串,那么只要知道这两个串的排名,就可以对所有\(2^k\)的串进行双关键字排序于是
  • 2024-11-10MX S28
    A对于一个子矩阵\((x_1,y_1),(x_2,y_2)\),其元素和为\(\sum_{i=x_1}^{x_2}\sum_{j=y_1}^{y_2}S_i\cdotS_j=(\sum_{i=x_1}^{x_2}S_i)(\sum_{j=y_1}^{y_2}S_j)\),\(O(n^2)\)枚举一下\(S\)的所有子区间的和放进一个桶里再检验一下即可。即对于一个子区间和为\(S_1\),需要累加和
  • 2024-11-08KMP学习笔记
    复习了一下KMP。与其说是复习,不如说是重学了一遍。学习KMP实际上就是学习了前缀函数。下文大抵把OI-Wiki上关于前缀函数和KMP的部分内容说了一下。前缀函数定义给定一字符串,对于它的每个前缀\(s[0,i-1]\),存在该子串的真前缀与真后缀相同,其中最大的一对前后缀的长度,记作:\[\lar
  • 2024-11-08Cadence(Allegro)的PCB文件转PADS的PCB文件
    概述:Cadence(Allegro)的PCB文件后缀名为brd,PADS的PCB文件后缀名为pcb,将Cadence(Allegro)的PCB文件转PADS的PCB文件需要经过以下步骤:1、将Cadence(Allegro)的PCB文件由brd后缀转换为alg后缀;2、将Cadence(Allegro)的alg后缀PCB文件转为AltiumDesigner的PCB文件(后缀名为pcbdoc);3、将Alt
  • 2024-11-08普及 SAM
    参考了一些博客,如有侵权,请告知。内部资料,包不外传。定义后缀自动机(SAM)的结构包含两部分,有向无环单词图(DAWG)和parent树。SAM中的每个节点都同时存在于这两个结构中。以下假设我们是关于字符串\(s\)的SAM。DAWGDAWG是一个DAG。我们令起始结点为\(st\),\(st\)在DAWG
  • 2024-11-07公共后缀和站点域
    公共后缀(PublicSuffix)和站点域(SiteDomain)是域名层级体系中的两个重要概念,通常用于解释互联网域名的组织方式,以及域名在浏览器、搜索引擎等系统中的处理方式。以下是两者的详细介绍和例子:1.公共后缀(PublicSuffix)定义:公共后缀指的是域名的末尾部分,通常由顶级域(TLD)或特定国家/
  • 2024-11-07后缀数组
    学了这个东西字符串水平下降一万倍,之前敢拿hash草的题现在不敢了。后缀数组板题后缀数组可以把字符串的所有后缀存起来,然后干各种奇怪的事情。现在给你一个字符串banana,给他的后缀A,NA,ANA,NANA,ANANA,BANANA跑一个后缀的trie。然后把字典序小的字母排在左边,给每个后缀对
  • 2024-11-02[ACTF2020 新生赛]Upload
    题目链接:https://buuoj.cn/challenges#[ACTF2020新生赛]Upload打开环境后如下所示。指向灯泡,可以发现存在一个上传功能。尝试先上传".php"后缀文件,响应包如下。题目提示"nonono~Badfile!",此处笔者直接修改后缀为".phtml"后,发现可以成功上传,并且网页告知了上传的文件
  • 2024-11-01后缀数组求 LCP 和相关证明
    后缀数组求LCP和相关证明一些定义\(\text{SA}(i)\)排名为\(i\)的后缀左端点;\(\text{rank}(i)\)左端点为\(i\)的后缀排名;\(\text{suf}(i)\)左端点为\(i\)的后缀;\(\text{lcp}(S,T)\),串\(S\)和\(T\)的最长公共前缀,即\(\max\left\{x|\forally\lex,S_{y}=S_{
  • 2024-11-01SS241031D. 后缀数组(sa)
    SS241031D.后缀数组(sa)题意重题:NOD2308D.飒妃客厮·啊瑞(array)给你一个初始\(a_i=i\)的长度为\(n\)的序列,\(n\le10^9\)。有\(m\)次操作。\(m\le10^5\)。把区间\([l,r]\)移到最前面。翻转区间\([l,r]\)。最终得到序列\(\{a_i'\}\)。求满足长度为\(n\)的
  • 2024-10-31倍增求后缀数组
    倍增求后缀数组1.一些定义后缀\(i\):子串\([\text{len}(S)-i+1,\text{len}(S)]\);\(\text{SA}(i)\):排名为\(i\)的后缀;\(\text{rank}(i)\):后缀\(i\)的排名,\(\foralli>n,\text{rank}(i)=0\)。后缀数组即\(\text{SA}\)。2.求法先对每个单独的字符从小到大排序,得到每个
  • 2024-10-30Lyndon 理论学习笔记
    字符串,太深刻了/kk定义下标从1开始。\(+\)是字符串拼接。\(|s|\)表示\(s\)的长度。\(s_i\)表示\(s\)的第\(i\)个字符。\(s^k\)表示\(k\)个\(s\)拼接的结果。字符串间的大小关系用字典序比较。Lyndon串字符串\(s\)是Lyndon串当且仅当\(s\)小于其
  • 2024-10-30SA:从入门到入土
    基本应用读入一个长度为$n$的由大小写英文字母或数字组成的字符串,请把这个字符串的所有非空后缀按字典序(用ASCII数值比较)从小到大排序。解法1.将每个后缀取出来,直接排序\(O(n^2\logn)\)2.用hash二分LCP比较下一位,\(O(n\log^2n)\)3.倍增求后缀数组,\(O(n\logn)\)
  • 2024-10-2910.29
    距离NOIP2024还有31天arc181_c:按行的字典序大小,每一行比上一行多一个\(1\),选在未选过的列的字典序最大的那一列。arc180_b贪心感觉很妙,但是感觉还是官解比较好理解。我们定义序列\(pos\),满足\(pos_{p_i}=i\),那么每次交换其实就是找一对\((i,j)\)满足\(1\lei<j\le
  • 2024-10-28网站域名如何申请?有哪些步骤?
    申请一个网站域名究竟需要哪些步骤?无论你是想建立一个个人博客,还是想开设一个在线商店,域名都是你在互联网上的“地址”。那么,如何申请一个网站域名呢?第一步:选择合适的域名在申请域名之前,首先需要思考一个合适的域名。这个域名应该简短、易记,并且能够反映你的网站主题或
  • 2024-10-27Adams导出图象/数据的主要设置
    步骤:Result——Postprocessor——File——Export。Export之后会有多种选项,以下列举常用的各个选项:1.PlotConfigFile:该选项会导出一个.plt文件,系AutoCAD打印文件。这一步会弹出界面:ConfigFileName是你要导出文件名称。Target是你要导出的路径。PageNames是你要导出的图
  • 2024-10-262024-10-26:最长公共后缀查询。用go语言,给定两个字符串数组 wordsContainer 和 wordsQuery,要对每个 wordsQuery[i] 找到一个与其有最长公共后缀的字符串
    2024-10-26:最长公共后缀查询。用go语言,给定两个字符串数组wordsContainer和wordsQuery,要对每个wordsQuery[i]找到一个与其有最长公共后缀的字符串。如果有多个字符串与wordsQuery[i]有相同的最长公共后缀,则返回在wordsContainer中最早出现的那个。最后,返回一个整数数组a