上一页 1 ··· 46 47 48 49 50 51 52 53 54 ··· 81 下一页
摘要: 问题描述: 给定一个全部由小写英文字母组成的字符串,允许你至多删掉其中 3 个字符,结果可能有多少种不同的字符串? 输入格式: 输入在一行中给出全部由小写英文字母组成的、长度在区间 [4, 1e6] 内的字符串。 输出格式: 在一行中输出至多删掉其中 3 个字符后不同字符串的个数。 解法: d[i] 阅读全文
posted @ 2020-11-24 20:43 RioTian 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 对一个十进制数的各位数字做一次平方和,称作一次迭代。如果一个十进制数能通过若干次迭代得到 1,就称该数为幸福数。1 是一个幸福数。此外,例如 19 经过 1 次迭代得到 82,2 次迭代后得到 68,3 次迭代后得到 100,最后得到 1。则 19 就是幸福数。显然,在一个幸福数迭代到 1 的过程中 阅读全文
posted @ 2020-11-24 18:53 RioTian 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 在上一篇文章当中我们分享了强连通分量分解的一个经典算法Kosaraju算法,它的核心原理是通过将图翻转,以及两次递归来实现。今天介绍的算法名叫Tarjan,同样是一个很奇怪的名字,奇怪就对了,这也是以人名命名的。和Kosaraju算法比起来,它除了名字更好记之外,另外一个优点是它只需要一次递归,虽然 阅读全文
posted @ 2020-11-24 18:08 RioTian 阅读(268) 评论(0) 推荐(1) 编辑
摘要: 转载自:NotOnlySuccess的博客 【完全版】线段树 很早前写的那篇线段树专辑至今一直是本博客阅读点击量最大的一片文章,当时觉得挺自豪的,还去pku打广告,但是现在我自己都不太好意思去看那篇文章了,觉得当时的代码风格实在是太丑了,很多线段树的初学者可能就是看着这篇文章来练习的,如果不小心被我 阅读全文
posted @ 2020-11-23 21:34 RioTian 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 众所周知,ping命令是个非常实用的网络命令;有时,我们会发现在电脑中无法使用ping命令,一般来说,是由于电脑的环境变量出了问题,本文将介绍如何解决这个问题。 1.一般出现ping命令无法使用的情况如图: 2.我遇到的ping命令无法使用的情况,基本都是因为“环境变量”导致的,查看环境变量path 阅读全文
posted @ 2020-11-23 20:35 RioTian 阅读(1963) 评论(0) 推荐(1) 编辑
摘要: Kosaraju算法一看这个名字很奇怪就可以猜到它也是一个根据人名起的算法,它的发明人是S. Rao Kosaraju,这是一个在图论当中非常著名的算法,可以用来拆分有向图当中的强连通分量。 背景知识 这里有两个关键词,一个是有向图,另外一个是强连通分量。有向图是它的使用范围,我们只能使用在有向图当 阅读全文
posted @ 2020-11-23 20:04 RioTian 阅读(1995) 评论(0) 推荐(2) 编辑
摘要: 做题之前,可以先到下面这个网站玩一会游戏: https://unixpapa.com/floodit/?sz=14&nc=6 游戏开发里面,比较常用的一个搜索算法是寻路算法,寻路算法里面用的最多的是A*算法以及很多优化的A*算法,对于只有4个方向的寻路算法,之前在网上见到有A*的位运算优化,性能非常 阅读全文
posted @ 2020-11-23 19:58 RioTian 阅读(304) 评论(0) 推荐(1) 编辑
摘要: 博弈算法中比较经典的一个博弈问题是巴什博奕,巴什博弈是这样的: 有一堆物品,数量为n,两个人轮流取,规定每次最多取m个,最少取1个。 我们定义先取者为F(first),后取者为S(second) 网上讲的很多不是很容易理解,我来讲一个非常容易理解的思路。 **推理1:**显然,如果n=m+1,那么由 阅读全文
posted @ 2020-11-23 19:50 RioTian 阅读(360) 评论(0) 推荐(1) 编辑
摘要: 呼,熬过一场考试,补下题吧 A. Robot Program 在一个二维无限方格中,初始时你在格子里,每秒你有5种决策:选择移动到上下左右四个格子中的一个或者停留在原地。你不能连续两秒做相同的决策,问最短时间走到格子 \((x,y)\)。 \[ 1 <= t <= 100,0<=x,y<=10^4 阅读全文
posted @ 2020-11-21 14:53 RioTian 阅读(189) 评论(0) 推荐(1) 编辑
摘要: 题目链接:点这里 题意:理解错了题意导致WA好几发,QAQ暴击 题意是判断给你的2*n-2个字符串是前缀还是后缀,不是判断这个字符串的内容...我真的欲哭无泪,理解能力太菜了 思路:将两个n-1长的字符串取出,先判断第一个取出的字符串和给出的字符串前缀的匹配程度。如果匹配程度大于半数,则这个为所需字 阅读全文
posted @ 2020-11-19 09:53 RioTian 阅读(137) 评论(0) 推荐(1) 编辑
摘要: 今天在网上看到了1987年国际C语言混乱代码大赛获奖的一行代码,代码只有一行,却穷尽了C中的精华。下面对这一行代码进行分析: main() { printf(&unix["\021%six\012\0"],(unix)["have"]+"fun"-0x60);} 任何复杂的东西源自自己了解的知识太少 阅读全文
posted @ 2020-11-17 21:33 RioTian 阅读(381) 评论(0) 推荐(1) 编辑
摘要: 本篇文章来自小北学长的公众号,仅做学习使用,部分内容做了适当理解性修改和添加了博主的个人经历。 注:这篇文章好好看完一定会让你掌握好指针的本质! 看到标题有没有想到什么? 是的,这一篇的文章主题是「指针与内存模型」 说到指针,就不可能脱离开内存,学会指针的人分为两种,一种是不了解内存模型,另外一种则 阅读全文
posted @ 2020-11-11 20:30 RioTian 阅读(1201) 评论(3) 推荐(5) 编辑
摘要: 比赛链接:kick start Round A 2020 A. Allocation 题目链接 题意 给出 \(N\) 栋房子的价格,第 \(i\) 栋房子的价格为 \(A_i\),你有 \(B\) 美元,问最多可以买多少栋房子? 思路 典型的贪心问题,将所有的房子按价格从低到高排序后选取即可。 代 阅读全文
posted @ 2020-11-11 20:00 RioTian 阅读(196) 评论(0) 推荐(0) 编辑
摘要: Manacher 算法:解决最长回文子串的利器 阅读全文
posted @ 2020-11-11 13:22 RioTian 阅读(286) 评论(1) 推荐(1) 编辑
摘要: bitset 一般代替 bool 数组使用,常用于优化空间,因为 bitset 中一个元素只占 1 bit。 bitset 的大小在定义使就需要确定。如果想要不定长的 bitset,就需要使用 vector。 bitset 的定义: bitset<16> bt; // 定义大小为16的bitset, 阅读全文
posted @ 2020-11-11 13:06 RioTian 阅读(318) 评论(0) 推荐(1) 编辑
上一页 1 ··· 46 47 48 49 50 51 52 53 54 ··· 81 下一页