- 博客(25)
- 收藏
- 关注

原创 牺牲空间换取时间——计数排序(Count sort)
计数排序是一个非基于比较的,该算法于1954年由 Harold H. Seward 提出。它的优势在于在对一定范围内的整数排序时,它的为Ο(n+k)(其中k是整数的范围),快于任何比较排序算法。当然这是一种牺牲空间换取时间的做法,而且当O(k)>O(n*log(n))的时候其效率反而不如基于比较的排序(基于比较的排序的在理论上的下限是O(n*log(n)), 如。
2023-05-27 12:40:13
158

原创 freee Programming Contest 2022(AtCoder Beginner Contest 264)A~D题详细讲解
freee Programming Contest 2022(AtCoder Beginner Contest 264)A~D题详细讲解
2022-08-14 14:21:39
1349
原创 欢迎加入 洛谷团队 Little Boy Online Judge !
欢迎加入 洛谷团队 Little Boy Online Judge!不管您是灰名、红名还是甚至棕名,我们都欢迎您加入本团队!并且,每一位加入的成员都会被设置为管理员!您可以向身边的朋友们推荐此团队!
2023-08-27 22:01:31
439
原创 NFLSOJ 20230617周赛 A. 754 (枚举)
这道题很容易想到的方法是以string类型读入,然后枚举其中每段连续的三位。(毕竟题目里说的也是string)题目里说的s是字符串,难道在程序里也一定要是字符串吗?定义函数:int abs(int j);函数说明:abs()用来计算参数j的。那么我们就可以跳出字符串的思维,用。首先做这道题不得不使用。返回值:返回参数j的。
2023-06-17 22:09:32
308
原创 邻居好说话——冒泡排序(Bubble Sort)
冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行,直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同中的气泡最终会上浮到顶端一样,故名“冒泡排序”。
2023-05-27 13:57:56
187
原创 Codeforces 1684B - Z mod X = C (数学)
这里,p mod q表示p除以q的余数。可以表明,对于此类约束,答案总是存在的。给你三个正整数a,b,c(a
2023-05-27 10:49:57
99
原创 信息学奥赛一本通 1176:谁考了第k名 (排序)
水题,用pair存放数据,然后从大到小sort,最后输出结果即可。信息学奥赛一本通(C++版)在线评测系统。
2023-05-21 13:02:22
434
原创 【动态规划】分组背包问题 详细讲解
【详细讲解】我们可以用01背包的思想去思考分组背包,得到状态转移方程式:,v[i][k]和w[i][k]分别表示第i组物品中第k个物品的体积和价值。通过滚动优化可得:.
2023-02-01 11:32:08
1596
1
原创 【动态规划】多重背包问题的二进制优化 详细讲解
【详细讲解】在上期讲解中,我们将多重背包转换成01背包,把件物品放入数组,转换为有种物品,每种物品有一件。但是用这种方法的话,要是数据太大,则会导致超时。有什么办法能优化时间复杂度呢?
2023-01-31 21:45:06
686
原创 【动态规划】完全背包问题及一维数组空间优化 详细讲解
【详细讲解】完全背包问题非常类似于01背包问题,所不同的是每种物品有无限件,也就是从每种物品的角度考虑,与它相关的策略已并非取或不取两种,而是有取0件、取1件、取2件……取[c/]件等很多种。
2023-01-31 18:01:28
260
原创 【动态规划】01背包问题 一维数组空间优化 详细讲解
【详细讲解】在使用二维数组解决01背包问题时,求dp[i][...]时,只需要调用dp[i-1][...]。因此i这一项是完全不需要的,只需要通过滚动,用现在的替换之前的,但是要注意要倒过来循环,否则调用到的dp[j-wi]是已经被替换过的新数。在上期讲解中我们用二维数组解决了01背包问题,但是空间复杂度较大,是否能优化成一维数组呢?
2023-01-31 16:57:49
359
1
原创 【动态规划】01背包问题 二维数组入门 详细讲解
【动态规划详细讲解!】背包问题(Knapsack problem)是一种组合优化的NP完全问题。问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择,才能使得物品的总价格最高。问题的名称来源于如何选择最合适的物品放置于给定背包中。相似问题经常出现在商业、组合数学,计算复杂性理论、密码学和应用数学等领域中。也可以将背包问题描述为决定性问题,即在总重量不超过W的前提下,总价值是否能达到V?它是在1978年由Merkle和Hellman提出的。
2023-01-31 15:36:22
496
1
原创 Codeforces 678C - Joty and Chocolate(数学)
题目思路:用容斥原理(详见代码),算出只能涂红的瓷砖数red、只能涂蓝的瓷砖数blue和两者都能涂的瓷砖数purple。输出red*p+blue*q+purple*max(p,q)即可。
2023-01-20 12:16:24
155
原创 TOYOTA SYSTEMS Programming Contest 2022(AtCoder Beginner Contest 279) A~C题详细讲解
【精品题解】考砸了,掉了25分……
2022-11-27 12:10:37
542
原创 AtCoder Beginner Contest 278 A~E题详细讲解
【精品题解】这次比赛非常水,也许是因为上一场比赛出得太难了,有兴趣的可以点击。赛时:A,B,C,D,E,取得历史新高。话不多说,本题解现在开始。A - Shift以上是对shift的英文翻译,和上次比赛一样,不知道是几个意思。题目大意:有一个长度为n的数组,进行k次操作:每次删掉第一位,并在最后放进一个0。输出操作后的数组。题目思路:用队列(queue)模拟。
2022-11-20 12:03:42
901
1
原创 Daiwa Securities Co. Ltd. Programming Contest 2022 Autumn (AtCoder Beginner Contest 277) A~C题详细讲解
【精品题解】这次C题难得太突然,搞得博主有点手足无措,最后Rating掉了1分……(博主很菜)赛时AC:A,B,C。好,不说废话,直接上题解。
2022-11-19 21:43:15
949
2
原创 AtCoder Regular Contest 151A - Equal Hamming Distances(贪心)
题目大意:给你 两个字符串S和T(长度都为n),请求出字典序最小的字符串U,要求它与S不同的字符数量等于与T的。若无解,输出-1。
2022-10-30 13:32:59
165
原创 Codeforces 185A - Plant(矩阵快速幂)
【含彩蛋!】一年后,“向上”的三角形植物分成四个三角形植物:其中三个指向“向上”,一个指向“向下”。再过一年,每个三角形植物分成四个三角形植物:其中三个方向与母植物相同,一个方向相反。这样不仅能把非常大的指数给不断变小,所需要执行的循环次数也变小,而最后表示的结果却一直不会变。帮助小矮人找出n年内有多少“向上”的三角形植物,输出除以1000000007(1e9+7)的余数。 O(log₂N), 与朴素的O(N)相比效率有了极大的提高。...
2022-08-13 12:17:19
1106
原创 Codeforces 39H - Multiplication Table(进制转换)
题目大意:打印一张(k-1)×(k-1)的k进制乘法表。虽然是H题,但是别急,码龄1岁的就可以做了。
2022-08-12 12:19:39
404
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人