由于自己一直不刷题,越来越菜,为了拒绝躺平,我决定刷刷题! 题意 现在我们要负责城市扩建的规划工作。建筑位于每个格子的正中间。原来(n=1时)的城市是如下图(a)一样的排列(这里的布局强调的是两个建筑之间道路的规划)。 对于n时,扩建的方案是把n-1时的城市布局原封不动复制一遍放到正上方,然后原来的布局分别逆时针和顺时针旋转90度放到左上方和左方。…
题意 对于两个字符串s1和s2。 先把s3和s4都设为s1,然后循环这样的操作: 对于第i次操作,从s3里把s2字符串的第i个字符全部删掉。 然后把s3加在s4的最后面。 知道s2里的字符全部都扫一遍结束。 举个例子: s1是abacaba,s2是bac,那么步骤是这样的: 一开始,s4就是s1,也就是abacaba 第1次操作:把所有b删掉(s2…
题意 在一个 [1,m) 的数轴上有 n 条线段,第 i 条覆盖的范围是[li, ri),权值是wi。 现在希望我们能从这n个线段里挑出一些线段,这些线段能够覆盖数轴上[1,m)所有点。问在这些所有可能的选法里,所选线段权值最大的那个的权值减去最小的权值,这个差最小能是多少。 思路 用快慢指针实现扫描功能 首先将这n个线段排序,这里可以用快慢指针去…
题意 这个题中出现的字符串只能有a, b, c三个字母构成。如果一个字符串里不存在一个子串,既是回文串又有长度大于等于2,那么这个串就很漂亮。 给一个长为n的字符串,有m次询问,每次询问[l,r]这个区间的字符串,至少需要改变几个字符,才能把它变成一个好看的字符串。 思路 关键点:一个漂亮的字符串,其实任意三个相邻字符都两两不相同。 证明:思考这样…
题目 小明喜欢武侠小说,在武侠世界里,他不但练就了一箭双雕的能力,还可以一箭多雕。 现在所有雕在一条直线上从左到右排列,但是他们的高度不同。而小明想要把他们都射下来。小明使用的是一种特殊的弓箭,他可以将弓箭射到任意一个高度为H的雕,当射中一个高度为H的雕后,弓箭的高度会下降到H-1,再从左到右飞行,直到射到高度为H-1的大雕,再降低1的高度,直到飞…
题目 乐乐的 n 位朋友都拥有唯一的一个编号,编号分别为 1 至 n。某天按到达的时间顺序又给了一个顺序号,此时发现顺序号与多数的朋友编号不一致。乐乐想:如果俩俩交换顺序号,使得每位朋友的编号与顺序号相同,则最少需要交换几次? 输入: 包含二行: 第一行只有一个正整数:n,表示乐乐朋友的人数 第二行共有 n 个正整数,分别表示按顺序到达的朋友编号 …
题目 有一直线型展台共有 m 个展位,按该展位离入口处的远近顺序编号,其编号分别为 1、2、……、m;其中只有 n 个是展示新技术的展位,最后一个展示新技术的展位编号为 m。 这次调研分两个小组进行,每个小组最多调研连续的 10 个展位,且每个小组调研的展位至少相隔 2 个展位。 乐乐希望你设计一种安排方案,使领导调研更多的展示新技术的展位。 输入…
很久之前我一直看不懂KMP算法,看了一个视频里dalao的讲解,我还是没看懂。。。。。。 然后在暑假的某一天,睡觉的时候突然明白了一点点我以前不会的KMP算法,于是赶紧记下来。 如果我希望得知某一个字符串 p 在某一个字符串 s 中是否出现过,或者出现过几次,或者在哪里出现过,那么应该怎么办呢? BF算法 我上来一拍脑门就能想到一种暴力算法,也就是…
题目 题目 输入多组数据,每组输入整数a和b,(0<=a<=3000, 1<=b<=3000),输出a/b的循环小数表示以及循环字节长度。 样例输入 76 25 5 43 1 397 样例输出 76/25 = 3.04(0) 1 = number of digits in repeating cycle (空行) 5/43 …
26 26*26 702 今年我们学校办了一场声势浩大的程序设计新生赛,吸引了学校一百三十多号新生前来参赛,可喜可贺。 作为弱鸡,为了第一时间围观dalao的风范,切身体会被dalao吊打的感觉,我上周日八点半就起了床,饭也没吃脸也没洗,打开浏览器就开始等待比赛开始。 九点的钟声准时敲响,比赛准时开始。 出了啥题 学长老早之前就说了,这次新生赛题目…