自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(80)
  • 资源 (2)
  • 收藏
  • 关注

原创 PyTorch安装指南

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。戳这里获得更好的阅读体验哦!.近日,人工智能越来越火,人工智能的运用也越来越广泛。2020年12月4日,中国领子计算原型机“九章”问世,使得计算机的算力得到了巨大的提高。虽然“九章”只能处理高斯玻色采样这一特殊问题,但是相信不远的将来一定能发展出全能的量子计算机,进而为人工智能的训练提供强大的算力。人工智能需要构建一定的模型,而对于模型的构建,PyTorch可以提供强大的帮助。本文将介绍在Ubuntu20.04虚拟机环境下使用p

2021-01-18 00:20:07 289

原创 VMware Workstation 15.5 永久修改Ubuntu20.04分辨率

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。戳这里获得更好的阅读体验哦!.VMware安装Ubuntu20.04虚拟机的过程中,会遇到无法将分辨率调整为1920*1080的问题。网络上给出的一些方法,大部分都只能修改当前的分辨率,无法做到重启后生效。今天,我来给大家讲讲如何 永久修改Ubuntu20.04虚拟机的分辨率。安装VMware ToolsVMware Tools是虚拟机自带的拓展功能,安装后能支持共享剪切板、共享文件夹等诸多功能,分辨率的问题有概率能得到解决。因此,

2020-08-22 11:02:40 1351

原创 VMware Workstation 15.5 安装 Ubuntu20.04

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。戳这里获得更好的阅读体验哦!在开发过程中,最常使用的系统估计要数Linux了。这是一种开源的系统,具有较多的发行版。开源系统的优势在于大多都是免费的,而且易于更新和维护,因此得到了大多数程序员的青睐。今天,我向大家介绍一下在VMware上安装Ubuntu20.04的方法。软件准备我的电脑是windows10 家庭版,所有操作都在这个系统上进行。Ubuntu20.04的镜像文件可以在清华大学的开源软件镜像站..

2020-08-19 11:06:36 483

原创 从飞鸽传书,到5G通讯

古代传信中国上下五千年的历史上,早在几千年前的战国时期,甚至在更早的商朝,信息的传递都已经占据了十分重要的地位。上到国防政策,下到家书家信,都需要通过信息传递来实现。当时,大多数信息依靠信使快马加鞭奔走几千里来传递。自公元前500年开始,古代希腊和波斯之间就不断的产生冲突,进行了一场持续了大概半个世界的希波战争。希波战争的结果,是希腊击败波斯,取得了这场反侵略战争的胜利。为了让故乡人民早点得到胜利的喜讯,希腊军队派出了号称“飞毛腿”的士兵菲迪皮茨来传信。他跑了42公里终于将信息传回了故乡。.

2020-05-17 21:36:40 1429

原创 后缀数组,单字符串问题的天敌

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。戳这里获得更好的阅读体验哦!前两期,我们重点介绍了后缀数组中sa、rank、height数组的求法。这些数组都具有优秀的性质,我来向大家介绍几种后缀数组在解决单字符串问题上的经典应用。最长重复子串(可重叠)Problem:若字符串A在字符串B中出现两次及以上,则称A为B的重复子串。给定字符串S,求S中出现位置可重叠的最长重复子串的长度。Solution:回想height数组的定义,发现可重叠最长重复子串的长度..

2020-05-15 16:31:31 160

原创 后缀数组之多字符串问题

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。戳这里获得更好的阅读体验哦在多字符串问题上,后缀数组是否仍然有优秀的表现呢?答案显然是肯定的。最长公共子串Problem:给定两个字符串S和T,求这两个字符串的最长公共子串。Solution:容易发现,一个字符串的子串,一定是该字符串的每个后缀的前缀。所以,求两个字符串的最长公共子串,只需要找这两个字符串的后缀的最长公共前缀就行了。但是,问题在于如何对两个字符串使用后缀数组呢?这里有一个小技巧。我..

2020-05-15 16:29:01 225

原创 【进阶】后缀数组之精髓——height数组

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。戳这里获得更好的阅读体验哦!上期我们介绍了后缀数组中代码最难写的一部分,今天我们来讲解一下后缀数组中最精髓的一部分——height数组的求解。【进阶】字符串问题一大利器——后缀数组详解(附上sa数组求法的讲解)几个共识和之前一样,为了后文方便讲解,我们先来达成几个共识。1、height[i]表示后缀s...

2020-05-02 20:59:30 694

原创 bzoj1124

1124: [POI2008]枪战MafTime Limit: 10 SecMemory Limit:162 MBSubmit: 654Solved: 258[Submit][Status][Discuss]Description有n个人,每个人手里有一把手枪。一开始所有人都选定一个人瞄准(有可能瞄准自己)。然后他们按某个顺序开枪,且任意时刻只有一个人开枪。因此

2020-04-30 12:54:35 157

原创 【进阶】字符串问题一大利器——后缀数组详解

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。戳这里获得更好的阅读体验哦!今天,我们来介绍一下解决字符串问题的一大利器——后缀数组。几个定义为了下文表示的方便,我们需要先达成几个共识。1、字符串的位置从0开始标号,一直到n-12、后缀i,表示从i...n-1这些字符按顺序组成的字符串。显然,该字符串是原字符串的一个后缀。3、字符串...

2020-04-30 12:52:28 692

原创 【进阶】决策单调性优化——另一种DP优化利器

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。今天,我们来介绍另一种DP优化方法——决策单调行优化。决策单调性优化与斜率优化有相似之处,但又有不同之处。相似之处在于这两者的运用条件都需要满足一个决策如果比另一个决策劣,那么这个决策一定不再是最优决策。不同之处在于,决策单调性优化是为每个决策点分配对应的决策区间,而斜率优化是每个状态自己去寻找相应的决策点。...

2020-04-24 18:30:24 439

原创 【进阶】斜率优化,帮你摆脱DP超时的烦恼

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。戳这里获得更好的阅读体验哦经过了前几期的介绍,相信大家对主要的DP类型都有了一定的了解。但是你是否感受过好不容易想出了动规方程,但是却因时间复杂度过高而无法A题的烦恼呢?今天,我来介绍一种动态规划的优化方法——斜率优化。例题(例题来源洛谷,侵删)一个想法看到这道题,我们很容易...

2020-04-22 23:04:07 266

原创 【进阶】数位DP详解

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。戳这里获得更好的阅读体验哦https://mp.weixin.qq.com/s/eZHoI7RZOvlEhhSNRpGhxA今天,我向大家介绍一种特殊的DP类型——数位DP。数位DP这类题目一般不会出现在提高组及以下的比赛中(今后出现了当我没说【滑稽】),更可能出现在省选及更高级别的比赛上,但是还是挺好...

2020-04-17 20:00:53 4152

原创 【基础】区间动规详解

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。戳这里获得更好的阅读体验哦https://mp.weixin.qq.com/s/_z-4Ytz08JYSI2D0aPPBJg今天,我来向大家讲解一下区间动规的问题模型和解决方法。首先,顾名思义,区间动规所要解决的问题是在一个序列上的,每一个区间都是一个子问题,这些子问题最后一同构成最终的问题。...

2020-04-10 17:25:07 631

原创 【基础】状压DP——二进制的妙用

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。之前我们讲解了背包问题、树形DP,区间DP这三类问题。这些都是中规中矩的动态规划题目。今天,我为大家讲解一种比较有趣、比较容易辨别的动规问题——状压DP。状压DP,非常容易理解,就是在状态比较多的情况下,同时状态只需要记录是或非,使用二进制将其压缩,从而达到缩减时间复杂度的效果。由于要使用二进制来表示状态,所...

2020-04-10 17:22:54 278

原创 【基础】树形动规——搜索与DP的结合

树形DP最基本的特点是:需要处理的物品有依赖关系,而且依赖关系构成一棵树。很容易可以发现,依赖关系树上的叶子节点是可以任意确定是否选取,而儿子节点的选择方案确定后,父亲的选择方案不会改变,而且能从儿子的状态来得到。这么看来,树形DP的基本处理方法也显而易见了:进行深度优先搜索,先处理子问题,通过回溯再来处理父问题。我通过几道例题,来为大家讲解树形动规的基本问题模型和讨论(题目来源洛谷,...

2020-04-05 21:46:22 248

原创 【基础】秒解DP神器,你值得拥有

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。上期,我们讲解了解决动态规划的基本步骤,分别是:设置状态、枚举子问题,更新答案。其实,这每一步都不是那么好做到的,需要有足够的经验和相关数学知识来得出并化简动态转移方程,这对入门选手是很不友好的。今天,我来介绍一种秒解DP的方法,适合入门选手快速熟悉动态规划问题,并逐步积累经验。他就是——...

2020-03-30 16:57:36 29659

原创 【基础】一叶知秋,从背包问题到动态规划

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。之前我们讲解了几种典型背包问题的问题模型和解决方法。其实,背包问题只是动态规划问题(简称DP)的冰山一角。动态规划还包含众多类型,有的问题甚至需要数据结构维护,是信息学竞赛中的一个难点,更是一个重点。今天,我们通过对背包问题的总结,来讲解一下动态规划的基本思路。首先,解决动态规划问题的基本步骤有:设置状...

2020-03-27 21:11:58 190

原创 关于字典树,你还不知道这些事

考虑到NOIP有过去的不考数据结构,到现在的考察范围越来越广,考察难度越来越高,所以,今天我们来介绍一种简单数据结构——字典树,及其基本原理和算法实现。字典树,又名Trie树,是一种用于处理单一字符串与多个字符串相互之间匹配关系的数据结构。字典树作为AC自动机的基础(以后会详细讲解),不仅在字符串处理领域有巨大的作用,同时在位运算、动态规划等方面也占有重要的地位。下面,我们来讲解一下...

2020-03-24 11:38:33 233

原创 【基础】背包九讲之完全背包

今天,我们来讲一讲背包问题中的另一个经典题型——完全背包。问题化简有N种物品和一个容量为V的背包。第i种物品的费用是c[i],价值是w[i],每种物品的数量可以任选。求解将哪些物品装入背包可使总价值最大。一个解法注意到完全背包和01背包的不同之处在于:完全背包每种物品可以无限取,而01背包每种物品只能取一次。有了01背包的基础,我们定义f[i][j]表示前i种物品,占用了...

2020-03-22 11:41:30 190

原创 【基础】01背包优化及应用。

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。上期我们介绍了01背包问题的问题模型和解决方法,今天我们来讲解一下01背包算法在空间上的优化方法。先贴上代码:for (int i = 1; i <= N; ++i) for (int j = 0; j <= V; ++j) if (j >= c[i]) ...

2020-03-21 17:35:22 375

原创 【基础】背包九讲之“01背包”

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。动态规划(简称DP)在当今赛场上所占的比例越来越多。今天,我们就来讲讲动态规划的入门问题——背包问题。背包问题有众多类型,其中“01背包”、“完全背包”最为典型(当然,其他类型也很重要)。我们先来讲解一下如何解决“01背包”的问题。问题化简01背包的问题一般可以简化为:有N件物品和一个容量为V的背...

2020-03-20 16:35:36 1206

原创 【bzoj2096】 [Poi2010]Pilots

DescriptionTz又耍畸形了!!他要当飞行员,他拿到了一个飞行员测试难度序列,他设定了一个难度差的最大值,在序列中他想找到一个最长的子串,任意两个难度差不会超过他设定的最大值。耍畸形一个人是不行的,于是他找到了你。Input输入:第一行两个有空格隔开的整数k(0Output输出:最大的字串长度。Sample Input3 95 1 3

2020-03-20 16:31:55 133

原创 C++究竟是写BUG神器,还是……

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。回想入门OI的时候,老师总和我们强调:C++是最方便、最好用的语言。无可厚非,C++拥有诸如“algorithm”、“set”、“map”、“vector”等众多的算法库。直接使用现成的模板,大大提高了赛场上的解题速度,并且降低了由于各种原因敲错模板而导致 WA 0 的惨剧。但是,在IT界,C++真...

2020-03-18 18:11:20 231

原创 Manacher时间复杂度证明

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。今天,我们来证明一下Manacher的时间复杂度。先贴上Manacher算法的模板:s[0] = '$'; s[++m] = '#';for (b = 1; ss[b] != '\0'; ++b) { s[++m] = ss[b]; s[++m] = '#';}s[++m] = '?';...

2020-03-16 16:39:35 690

原创 Manacher算法,还有这些你不知道

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。今天我们来介绍一下处理回文字符串的算法:Manacher(俗称“马拉车”)。回文字符串的通俗定义是:如果一个字符串正着读或反着读都一样,那么称这个字符串为回文字符串。Manacher的作用就是在O(N)的时间复杂度下求出以每个位置为回文中心的回文半径。接下来我们来看看Manacher算法的原理和实现方法吧。我...

2020-03-11 23:29:50 115

原创 bzoj2073 状压

2073: [POI2004]PRZTime Limit: 10 SecMemory Limit:64 MBSubmit: 329Solved: 248[Submit][Status][Discuss]Description一只队伍在爬山时碰到了雪崩,他们在逃跑时遇到了一座桥,他们要尽快的过桥. 桥已经很旧了, 所以它不能承受太重的东西. 任何时候队伍在桥上的人都不

2020-03-08 22:06:27 149

原创 bzoj2802

2802: [Poi2012]Warehouse StoreTime Limit: 10 SecMemory Limit:64 MBSecSpecial JudgeSubmit: 560Solved: 258[Submit][Status][Discuss]Description有一家专卖一种商品的店,考虑连续的n天。第i天上午会进货Ai件商品,中午

2020-03-08 22:06:04 155

原创 bzoj4378

4378: [POI2015]LogistykaTime Limit: 20 SecMemory Limit:256 MBSubmit: 518Solved: 264[Submit][Status][Discuss]Description维护一个长度为n的序列,一开始都是0,支持以下两种操作:1.U k a 将序列中第k个数修改为a。2.Z c s 在这

2020-03-08 22:05:50 122

原创 bzoj2081

2081: [Poi2010]BeadsTime Limit: 10 SecMemory Limit:259 MBSubmit: 758Solved: 272[Submit][Status][Discuss]DescriptionZxl有一次决定制造一条项链,她以非常便宜的价格买了一长条鲜艳的珊瑚珠子,她现在也有一个机器,能把这条珠子切成很多块(子串),每块有k

2020-03-08 22:05:15 112

原创 AC自动机详解

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。今天我们来介绍一点进阶的知识——AC自动机。AC自动机是什么呢?是不是用了这个算法,不管什么题目都会自动AC呢?(别做梦啦~)AC自动机,是Aho-Corasick automaton的简称,该算法在1975年产生于贝尔实验室,是著名的多模匹配算法。AC自动机是对字典树算法的一种延伸,是字符串中运用非常广泛的一种算法,...

2020-03-08 22:00:10 846

原创 代码风格规范

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。俗话说:“字如其人。”,我说:“代码如其人。”养成规范的代码风格,可以有效地减少bug的产生,提高阅读程序的效率,使程序更易被理解。在开发当中,代码风格是一名程序员基本功力的体现,可以说是非常重要的。在竞赛当中,整齐的代码可以缓解环境带来的压力,更易发现其中的逻辑错误,是提高成绩的有效方法。参考了Menci学长的...

2020-03-08 16:24:21 246

原创 KMP算法经典应用(超详细!!!)

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。上期我们讲了关于KMP算法的基本原理和实现,今天我们来证明KMP算法的时间复杂度和一些经典应用(敲黑板,划重点啦~)首先来证明一下时间复杂度是O(N)的(先贴上模板)。cin >>s;int m=s.size();s=" "+s; j=0;for (int i=2;i<=m+1;++i)...

2020-03-08 16:20:23 2886

原创 KMP算法详解

如果想了解更多内容,欢迎关注我的微信公众号:信息学竞赛从入门到巅峰。今天和大家讲讲KMP算法的基本原理和实现。KMP算法能够在O(N)的时间内完成字符串自身的匹配,其精髓主要在于next数组。next[i]的意义是在字符串的前 i个字符中,前缀等于后缀的最长的长度是多少。这么说可能有点抽象,我们来看一下下面这个例子。对于 ABAABB 这个字符串,他的next数组的值如下所示(为...

2020-03-08 16:15:02 184

原创 bzoj2464

2464: 中山市选[2009]小明的游戏Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 842  Solved: 344[Submit][Status][Discuss]Description小明最近喜欢玩一个游戏。给定一个n * m的棋盘,上面有两种格子#和@。游戏的规则很简单:给定一个起始位置和一个目标位置,小明每一步能

2017-07-28 23:48:27 371

原创 bzoj3875

3875: [Ahoi2014]骑士游戏Time Limit: 30 Sec  Memory Limit:256 MBSubmit: 849  Solved: 443[Submit][Status][Discuss]Description 【故事背景】长期的宅男生活中,JYY又挖掘出了一款RPG游戏。在这个游戏中JYY会扮演一个英勇的骑士,用他手中的长剑去杀死入

2017-07-28 23:47:30 294

原创 bzoj1644

1644: [Usaco2007 Oct]Obstacle Course 障碍训练课Time Limit: 5 Sec  Memory Limit:64 MBSubmit: 657  Solved: 313[Submit][Status][Discuss]Description考虑一个 N x N (1 <= N <= 100)的有1个个方格组成的正方形牧场。有些方格是

2017-07-28 23:46:16 291

原创 bzoj2276

2276: [Poi2011]TemperatureTime Limit: 20 Sec  Memory Limit: 32 MBSubmit: 705  Solved: 318[Submit][Status][Discuss]DescriptionThe Byteotian Institute of Meteorology (BIM) measures the air t

2017-07-28 23:45:15 286

原创 bzoj2083

2083: [Poi2010]Intelligence testTime Limit: 10 Sec  Memory Limit:259 MBSubmit: 545  Solved: 279[Submit][Status][Discuss]Description霸中智力测试机构的一项工作就是按照一定的规则删除一个序列的数字,得到一个确定的数列。Lyx很渴望成为霸中智力测

2017-07-28 23:43:27 322

原创 bzoj3831

gjz主持!3831: [Poi2014]Little BirdTime Limit: 20 Sec  Memory Limit:128 MBSubmit: 447  Solved: 276[Submit][Status][Discuss]DescriptionIn the Byteotian Line Forest there are   trees in a

2017-07-28 23:42:39 326

原创 bzoj2795

2795: [Poi2012]A Horrible PoemTime Limit: 50 Sec  Memory Limit:128 MBSubmit: 561  Solved: 276[Submit][Status][Discuss]Description给出一个由小写英文字母组成的字符串S,再给出q个询问,要求回答S某个子串的最短循环节。如果字符串B是字符串

2017-07-28 23:41:45 372

【基础】KMP算法详解.pdf

本文介绍了KMP算法的原理和基本实现方法,附带算法模板的代码和详解。如想了解更多内容,欢迎关注微信公众号:信息学竞赛从入门到巅峰。

2020-03-09

【入门】输出你的HelloWorld.pdf

本文介绍了如何使用DEV-CPP等软件编写正确C++程序。同时介绍了C++程序了基本构成框架,和基本语法等相关知识。可关注微信公众号:信息学竞赛从入门到巅峰。获取更多内容。

2020-03-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除