自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 Learn Basic JavaScript by Building a Role Playing Game

移除数组中的第一个元素并返回它。完整:

2024-02-22 15:32:15 958 1

原创 最高的牛--差分

N,每头牛的身高都为整数。现在,我们只知道其中最高的牛是第 P头,它的身高是 H,剩余牛的身高未知。我们会想到将每队牛之间的身高-1,假如我们令每一对牛的身高初始为0 ,那最高牛的身高再每一次-1中都不参与,既最高牛依然为0。差分用于群体求和/差,令(n,v)均+x == f(n) + x ,f(v) - x ,因为差分之后求原来数需要求一次前缀和,所以要“ f(v) - x ”。熟悉差分和前缀和的,在这题一大坑就是,每队(A,B)可以重复,但我实际只应该记录一次,所以需要判断是否重复。

2023-12-16 20:02:19 41 1

原创 完全背包问题

第 i 种物品的体积是 vi,价值是 wi。求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大。完全:an[i][j] = max(an[i - 1][j] , an[i][j-v[i]] + w[i] )同:和01背包问题一样,有两个选择:放和不放;但完全背包问题,放的可以是同一个物品。有 N种物品和一个容量是 V 的背包,每种物品都。异:与01背包问题不同在物品可用次数,为无数次。

2023-12-16 11:01:48 32 1

原创 奇怪的数--暴力解法

例如当 m=9时,1010110101 和 1230312303 就是奇怪的数,而 1234512345 和 1111111111 则不是。小蓝想知道一共有多少个长度为 n 的上述的奇怪的数。你只需要输出答案对 998244353取模的结果。在写代码时对于数的增加,我的想法有两种:long 输入再转换为字符串和先转换为字符串再进行数据的增加。此代码我用的是第二种。这道题主要就是题目信息提取:奇偶位数相应的判断、任意 5 个连续数位的和。小蓝最近在找—些奇怪的数,其奇数数位上是奇数,而偶数数位上是。

2023-12-15 19:36:17 525 3

原创 最短路径--Bellman-Ford解法及SPFA解法

求出一个点 S到每个点的最短路的长度。(约定: S到 S的距离为0,如果 S与这个点不连通, 则输出NoPath)关键思路:松弛n-1次,每一次对比是否距离变短。题:输入数据给出一个有 N个节点,M条边的。

2023-12-12 20:08:35 25 1

原创 最短路径--Dijkstra解法

给定一个 n个点 m 条边构成的无重边和自环的无向连通图。点的编号为 1∼n1。请问:1.从 11 到 n的最短距离。2.去掉 k条边后,从 11 到 n的最短距离。

2023-12-11 16:51:21 25 1

原创 前缀树--电话列表问题

2.当前字符串是否是某个字符串的前缀--> strlen(当前)< strlen(之前):是否能够检索到当前字符串-->没有构建新的节点!前缀树:init(初始化),insert(插入):前缀树的构建,注意字符串结束要标记,query(查询):查询部分,查询是否有这个字符串。1.是否存在一个字符串是当前字符串的前缀--> strlen(当前)> strlen(之前):是否创建当前字符串时发现了结束标志。给出一个电话列表,如果列表中存在其中一个号码是另一个号码的前缀这一情况,那么就称这个电话列表是不兼容的。

2023-12-10 10:47:20 36 1

原创 最短路径 Floyed解法

而memset()是对char操作,即一个字节一个字节的操作,如果此时初始化的变量a为int类型(4字节),且0x表示16进制,进行了数据转换!void *memcpy(void*a, const void *b, size_t n)函数表示将size_t n个b中数拷如a中。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。常memset(f , 0x3f , sizeof f )来将f[]中的值赋值为无限大,2.去掉 k条边后,从 11 到 n的最短距离。

2023-12-09 21:56:37 32

原创 汉诺塔问题

对汉诺塔的一次合法的操作是指:从一根柱子的最上层拿一个盘子放到另一根柱子的最上层,同时要保证被移动的盘子一定放在比它更大的盘子上面(如果移动到空柱子上就不需要满足这个要求)。一开始 n个盘子都摞在柱子 A 上,大的在下面,小的在上面,形成了一个塔状的锥形体。6、每次可以移动一个圆盘,当塔为空塔或者塔顶圆盘尺寸大于被移动圆盘时,可将圆盘移至这座塔上。4、所有的圆盘在开始时都堆叠在塔 A上,且圆盘尺寸从塔顶到塔底逐渐增大。请你求出将所有圆盘从塔 A移动到塔 D,所需的最小移动次数是多少。

2023-12-09 00:48:32 36 1

原创 DFS(深度优先搜索)--机器人的活动范围

地上有一个 m行和 n 列的方格,横纵坐标范围分别是 0∼m−1 和 0∼n−1。一个机器人从坐标 (0,0)(0,0) 的格子开始移动,每一次只能向左,右,上,下四个方向移动一格。但是不能进入行坐标和列坐标的数位之和大于 k 的格子。------那本题临界则是数位之和大于 k (格子超出边界也算,下列代码,已经提前做了限制---规定范围内的才会进行dfs)。此外为了避免回溯之后再次返回,需要标记空间是否访问,如此回溯时判断想要的下一步是否已经访问。回溯的条件往往是到达临界条件,故临界条件的确认很重要。

2023-12-07 10:03:56 62

原创 动态规划----爬楼梯游戏及背包问题

这时候就要想到动态规划这个方法了,从(1,1)(1,2).....试起,会发现类似与上面爬楼梯游戏的方面:(n,w)与前面的(n-x,w-y)存在一定的关系。常常每个之间是固定的,存在一定的关系。例如f(n)=f(n-1)+f(n-2)这个关系式。一个楼梯共有 n 级台阶,每次可以走一级或者两级,问从第 0级台阶走到第 n 级台阶一共有多少种方案。f(n)=f(n-1)+f(n-2).对斐波那契数列熟悉的就很容易会发现这个规律。这是比较直接的方法,大家也可以尝试运用其他的方法,如加入递归。

2023-12-06 09:22:36 72

空空如也

空空如也

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

TA关注的人

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