自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

信仰.的博客

学无止境

  • 博客(1427)
  • 收藏
  • 关注

原创 C++ 程序设计:使数组可以被整除的最少删除次数(LeetCode:2344)

给你两个正整数数组nums 和numsDivide。你可以从nums中删除任意数目的元素。请你返回使 nums中 最小元素可以整除 numsDivide中所有元素的 最少删除次数。如果无法得到这样的元素,返回 -1。...

2022-07-24 10:32:50 784 1

原创 C++ 程序设计:重建序列(LeetCode:444)

给定一个长度为 n 的整数数组 nums ,其中 nums 是范围为 [1,n] 的整数的排列。还提供了一个 2D 整数数组 sequences ,其中 sequences[i] 是 nums 的子序列。

2022-07-23 11:06:28 592

原创 C++ 程序设计:使数组 K 递增的最少操作次数(LeetCode:2111)

给你一个下标从 0开始包含 n个正整数的数组arr,和一个正整数k。如果对于每个满足k <= i <= n-1的下标i,都有arr[i-k] <= arr[i],那么我们称arr是 K递增 的。比方说,arr = [4, 1, 5, 2, 6, 2]对于k = 2是 K 递增的,因为:arr[0] <= arr[2] (4 <= 5)arr[1] <= arr[3] (1 <= 2)arr[2] <= arr[...

2022-05-05 15:27:35 1689

原创 C++ 程序设计:逃离火灾(LeetCode:2258)

给你一个下标从 0开始大小为 m x n的二维整数数组grid,它表示一个网格图。每个格子为下面 3 个值之一:0 表示草地。1 表示着火的格子。2表示一座墙,你跟火都不能通过这个格子。一开始你在最左上角的格子(0, 0),你想要到达最右下角的安全屋格子(m - 1, n - 1)。每一分钟,你可以移动到相邻的草地格子。每次你移动 之后,着火的格子会扩散到所有不是墙的 相邻格子。请你返回你在初始位置可以停留的 最多 分钟数,且停留完这段时间后你还能安全到达安全屋。如果...

2022-05-04 21:48:55 1054

原创 C++ 程序设计:花期内花的数目(LeetCode:2251)

给你一个下标从 0 开始的二维整数数组 flowers ,其中 flowers[i] = [starti, endi] 表示第 i 朵花的 花期 从 starti 到 endi (都 包含)。同时给你一个下标从 0 开始大小为 n 的整数数组 persons ,persons[i] 是第 i 个人来看花的时间。请你返回一个大小为 n 的整数数组 answer ,其中 answer[i]是第 i 个人到达时在花期内花的 数目 。示例 1:输入:flowers = [[1,6],[3,7],[9

2022-04-27 14:45:56 498

原创 C++ 程序设计:统计可以被 K 整除的下标对数目(LeetCode:2183)

给你一个下标从 0 开始、长度为 n 的整数数组 nums 和一个整数 k ,返回满足下述条件的下标对 (i, j) 的数目:0 <= i < j <= n - 1 且nums[i] * nums[j] 能被 k 整除。示例 1:输入:nums = [1,2,3,4,5], k = 2输出:7解释:共有 7 对下标的对应积可以被 2 整除:(0, 1)、(0, 3)、(1, 2)、(1, 3)、(1, 4)、(2, 3) 和 (3, 4)它们的积分别是 2、4、.

2022-03-27 21:31:11 1880

原创 C++ 程序设计:用地毯覆盖后的最少白色砖块(LeetCode:2209)

给你一个下标从0开始的 二进制字符串floor,它表示地板上砖块的颜色。floor[i] = '0'表示地板上第i块砖块的颜色是 黑色。floor[i] = '1'表示地板上第i块砖块的颜色是 白色。同时给你numCarpets 和carpetLen。你有numCarpets条黑色的地毯,每一条黑色的地毯长度都为carpetLen块砖块。请你使用这些地毯去覆盖砖块,使得未被覆盖的剩余 白色砖块的数目 最小。地毯相互之间可以覆盖。请你返回没被覆盖...

2022-03-26 20:16:36 1393

原创 C++ 程序设计:由单个字符重复的最长子字符串(LeetCode:2213)

给你一个下标从 0 开始的字符串 s 。另给你一个下标从 0 开始、长度为 k 的字符串 queryCharacters ,一个下标从 0 开始、长度也是 k 的整数 下标 数组queryIndices ,这两个都用来描述 k 个查询。第 i 个查询会将 s 中位于下标 queryIndices[i] 的字符更新为 queryCharacters[i] 。返回一个长度为 k 的数组 lengths ,其中 lengths[i] 是在执行第 i 个查询 之后 s 中仅由 单个字符重复 组成的 最长子.

2022-03-25 09:53:26 1998

原创 C++ 程序设计:处理含限制条件的好友请求(LeetCode:2076)

给你一个整数 n ,表示网络上的用户数目。每个用户按从 0 到 n - 1 进行编号。给你一个下标从 0 开始的二维整数数组 restrictions ,其中 restrictions[i] = [xi, yi] 意味着用户 xi 和用户 yi 不能 成为 朋友 ,不管是 直接 还是通过其他用户 间接 。最初,用户里没有人是其他用户的朋友。给你一个下标从 0 开始的二维整数数组 requests 表示好友请求的列表,其中 requests[j] = [uj, vj] 是用户 uj 和用户 vj 之间

2021-11-19 18:14:01 692

原创 JAVA程序设计:将数组分成两个数组并最小化数组和的差(LeetCode:5897)【附带二进制表示中1的个数为固定值的状态枚举方法】

给你一个长度为 2 * n的整数数组。你需要将nums分成两个长度为n的数组,分别求出两个数组的和,并 最小化两个数组和之差的绝对值。nums中每个元素都需要放入两个数组之一。请你返回最小的数组和之差。示例 1:输入:nums = [3,9,7,3]输出:2解释:最优分组方案是分成 [3,9] 和 [7,3] 。数组和之差的绝对值为 abs((3 + 9) - (7 + 3)) = 2 。示例 2:输入:nums = [-36,36]输出:72解...

2021-10-10 16:52:02 1547

原创 JAVA程序设计:划分数字的方案数(LeetCode:1977)

你写下了若干 正整数,并将它们连接成了一个字符串num。但是你忘记给这些数字之间加逗号了。你只记得这一列数字是 非递减的且没有 任何数字有前导 0 。请你返回有多少种可能的 正整数数组可以得到字符串num。由于答案可能很大,将结果对 109 + 7取余后返回。示例 1:输入:num = "327"输出:2解释:以下为可能的方案:3, 27327示例 2:输入:num = "094"输出:0解释:不能有数字有前导 0 ,且所有数字均为正数。示例 3:...

2021-10-06 10:48:06 344

原创 JAVA程序设计:分割数组的最多方案数(LeetCode:2025)

给你一个下标从0开始且长度为n的整数数组nums。分割数组nums的方案数定义为符合以下两个条件的pivot数目:1 <= pivot < n nums[0] + nums[1] + ... + nums[pivot - 1] == nums[pivot] + nums[pivot + 1] + ... + nums[n - 1]同时给你一个整数k。你可以将nums中一个元素变为k或不改变数组。请你返回在至多改变一个元素的前提下,最多有...

2021-10-04 12:31:21 448

原创 JAVA程序设计:石子游戏 IX(LeetCode:5892)

Alice 和 Bob 再次设计了一款新的石子游戏。现有一行 n 个石子,每个石子都有一个关联的数字表示它的价值。给你一个整数数组 stones ,其中 stones[i] 是第 i 个石子的价值。Alice 和 Bob 轮流进行自己的回合,Alice 先手。每一回合,玩家需要从 stones中移除任一石子。如果玩家移除石子后,导致 所有已移除石子 的价值总和 可以被 3 整除,那么该玩家就 输掉游戏 。如果不满足上一条,且移除后没有任何剩余的石子,那么 Bob 将会直接获胜(即便是在 Ali..

2021-10-03 20:07:00 369

原创 JAVA程序设计:不同的好子序列数目(LeetCode:1987)

给你一个二进制字符串binary。binary的一个 子序列如果是 非空的且没有 前导0(除非数字是 "0"本身),那么它就是一个 好的子序列。请你找到binary不同好子序列的数目。比方说,如果binary = "001",那么所有 好子序列为["0", "0", "1"],所以 不同的好子序列为"0" 和"1"。 注意,子序列"00","01"和"001"不是好的,因为它们有前导 0 。请你返回binary中不同好子序列的数目。由于...

2021-09-29 22:21:17 331

原创 JAVA程序设计:好子集的数目(LeetCode:1994)

给你一个整数数组nums。如果nums的一个子集中,所有元素的乘积可以用若干个 互不相同的质数相乘得到,那么我们称它为好子集。比方说,如果nums = [1, 2, 3, 4]:[2, 3],[1, 2, 3]和[1, 3]是 好子集,乘积分别为6 = 2*3,6 = 2*3和3 = 3。[1, 4] 和[4]不是 好子集,因为乘积分别为4 = 2*2 和4 = 2*2。请你返回 nums中不同的好子集的数目对109 + 7取余的结果。...

2021-09-29 21:27:42 375

原创 JAVA程序设计:每棵子树内缺失的最小基因值(LeetCode:2003)

有一棵根节点为 0的 家族树,总共包含 n个节点,节点编号为 0到 n - 1。给你一个下标从 0开始的整数数组 parents,其中parents[i]是节点 i的父节点。由于节点 0是 根,所以parents[0] == -1。总共有105个基因值,每个基因值都用 闭区间[1, 105]中的一个整数表示。给你一个下标从0开始的整数数组nums,其中nums[i]是节点 i的基因值,且基因值 互不相同。请你返回一个数组ans,长度为n,其...

2021-09-28 19:42:46 294

原创 JAVA程序设计:解出数学表达式的学生分数(LeetCode:5884)

给你一个字符串s,它 只 包含数字0-9,加法运算符'+'和乘法运算符'*',这个字符串表示一个合法的只含有个位数数字的数学表达式(比方说3+5*2)。有 n位小学生将计算这个数学表达式,并遵循如下 运算顺序:按照 从左到右的顺序计算 乘法,然后按照 从左到右的顺序计算 加法。给你一个长度为 n的整数数组answers,表示每位学生提交的答案。你的任务是给 answer数组按照如下 规则打分:如果一位学生的答案 等于表达式的正确结果,这位学生将得...

2021-09-27 12:28:03 284

原创 力扣杯2021秋季编程大赛 LCP 47.入场安检

「力扣挑战赛」 的入场仪式马上就要开始了,由于安保工作的需要,设置了可容纳人数总和为M的N个安检室,capacities[i]记录第i个安检室可容纳人数。安检室拥有两种类型:先进先出:在安检室中的所有观众中,最早进入安检室的观众最先离开 后进先出:在安检室中的所有观众中,最晚进入安检室的观众最先离开恰好M+1位入场的观众(编号从 0 开始)需要排队依次入场安检, 入场安检的规则如下:观众需要先进入编号0的安检室 当观众将进入编号i的安检室时(0 <= i &...

2021-09-25 20:59:28 320 1

原创 力扣杯2021秋季编程大赛 LCP 46.志愿者调配

「力扣挑战赛」有n个比赛场馆(场馆编号从0开始),场馆之间的通道分布情况记录于二维数组edges中,edges[i]= [x, y]表示第i条通道连接场馆x和场馆y(即两个场馆相邻)。初始每个场馆中都有一定人数的志愿者(不同场馆人数可能不同),后续m天每天均会根据赛事热度进行志愿者人数调配。调配方案分为如下三种:将编号为idx的场馆内的志愿者人数减半; 将编号为idx的场馆相邻的场馆的志愿者人数都加上编号为idx的场馆的志愿者人数; 将编号为idx的场馆相...

2021-09-25 20:53:11 285

原创 JAVA程序设计:从子集的和还原数组(LeetCode:1982)

存在一个未知数组需要你进行还原,给你一个整数 n 表示该数组的长度。另给你一个数组 sums ,由未知数组中全部 2n 个 子集的和 组成(子集中的元素没有特定的顺序)。返回一个长度为 n 的数组 ans 表示还原得到的未知数组。如果存在 多种 答案,只需返回其中 任意一个 。如果可以由数组 arr 删除部分元素(也可能不删除或全删除)得到数组 sub ,那么数组 sub 就是数组 arr 的一个 子集 。sub 的元素之和就是 arr 的一个 子集的和 。一个空数组的元素之和为 0 。注意:生

2021-09-21 22:52:07 351

原创 JAVA程序设计:重复 K 次的最长子序列(LeetCode:2014)

给你一个长度为 n 的字符串 s ,和一个整数 k 。请你找出字符串 s 中 重复 k 次的 最长子序列 。子序列 是由其他字符串删除某些(或不删除)字符派生而来的一个字符串。如果seq * k 是 s 的一个子序列,其中 seq * k 表示一个由 seq 串联 k次构造的字符串,那么就称 seq 是字符串 s 中一个 重复 k 次 的子序列。举个例子,"bba" 是字符串 "bababcba" 中的一个重复 2 次的子序列,因为字符串 "bbabba" 是由 "bba" 串联 2 次构造..

2021-09-21 16:37:59 509

原创 JAVA程序设计:数组的最大公因数排序(LeetCode:1998)

给你一个整数数组 nums ,你可以在 nums 上执行下述操作 任意次 :如果 gcd(nums[i], nums[j]) > 1 ,交换 nums[i] 和 nums[j] 的位置。其中 gcd(nums[i], nums[j]) 是nums[i] 和 nums[j] 的最大公因数。如果能使用上述交换方式将 nums 按 非递减顺序 排列,返回 true ;否则,返回 false 。示例 1:输入:nums = [7,21,3]输出:true解释:可以执行下述操作完成对 [.

2021-09-12 15:19:22 459

原创 JAVA程序设计:最长公共子路径(LeetCode:1923)

一个国家由 n个编号为 0到 n - 1的城市组成。在这个国家里,每两个城市之间都有一条道路连接。总共有 m个编号为 0到 m - 1的朋友想在这个国家旅游。他们每一个人的路径都会包含一些城市。每条路径都由一个整数数组表示,每个整数数组表示一个朋友按顺序访问过的城市序列。同一个城市在一条路径中可能 重复 出现,但同一个城市在一条路径中不会连续出现。给你一个整数n和二维数组paths,其中paths[i]是一个整数数组,表示第 i个朋友走过的路径,请你返回 每一个朋友都走...

2021-07-24 15:45:48 412

原创 JAVA程序设计:最美子字符串的数目(LeetCode:5799)

如果某个字符串中 至多一个 字母出现 奇数 次,则称其为 最美 字符串。例如,"ccjjc" 和 "abab" 都是最美字符串,但 "ab" 不是。给你一个字符串 word ,该字符串由前十个小写英文字母组成('a' 到 'j')。请你返回 word 中 最美非空子字符串 的数目。如果同样的子字符串在 word 中出现多次,那么应当对 每次出现 分别计数。子字符串 是字符串中的一个连续字符序列。示例 1:输入:word = "aba"输出:4解释:4 个最美子字符串如下所示:-

2021-06-27 17:49:40 521

原创 JAVA程序设计:查询差绝对值的最小值(LeetCode:1906)

一个数组 a的 差绝对值的最小值定义为:0 <= i < j < a.length且 a[i] != a[j]的 |a[i] - a[j]| 的 最小值。如果 a中所有元素都 相同,那么差绝对值的最小值为 -1。比方说,数组[5,2,3,7,2]差绝对值的最小值是|2 - 3| = 1。注意答案不为 0,因为a[i] 和a[j]必须不相等。给你一个整数数组nums和查询数组queries,其中queries[i] = [li, ri]。对于每...

2021-06-25 22:38:36 1163

原创 JAVA程序设计:反转表达式值的最少操作次数(LeetCode:1896)

给你一个 有效的布尔表达式,用字符串expression表示。这个字符串包含字符'1','0','&'(按位 与运算),'|'(按位 或运算),'('和')'。比方说,"()1|1" 和"(1)&()"不是有效布尔表达式。而"1","(((1))|(0))"和"1|(0&(1))"是 有效布尔表达式。你的目标是将布尔表达式的 值反转 (也就是将 0变为 1,或者将 1变为 0),请你返回达成目标需要的 最少操作次数。比方说,如果...

2021-06-22 20:49:23 387

原创 使用Zookeeper四字命令时显示This ZooKeeper instance is not currently serving requests

zookeeper 支持某些特定的四字命令与其交互,用户获取 zookeeper 服务的当前状态及相关信息,用户在客户端可以通过 telenet 或者 nc(netcat) 向 zookeeper 提交相应的命令。我采用了CentOS 8的安装命令进行安装:yum install nc 之后当我在zookeeper启动的时候随便输入了一条指令后提示:ruok is not executed because it is not in the whitelist.按照百度的步骤我在conf/z

2021-05-27 13:39:53 542

原创 使用阿里云配置Zookeeper集群时遇到启动成功但无法查看status的坑

这里记录下在配置Zookeeper集群时遇到的一个坑点,真的解决了好久,网上也没找到有效的解决方法。具体场景如下:我采用了三台阿里云服务器,并将一个作为leader,另外两个作为follower,之后按照教程1和教程2的步骤开始配置集群(PS:这里提一下,之前我通过单机配置伪集群时是成功的)。但是神奇的事情发生了,我按照步骤修改了conf下的zoo.cfg文件。并在data的路径下创建了myid文件,在三个服务器上分别写入了各自的id,然后开始跑zookeeper,状态如下:显示启动成功,可是当

2021-05-26 09:43:21 548

原创 JAVA程序设计:石子游戏 VIII(LeetCode:5766)

Alice 和 Bob 玩一个游戏,两人轮流操作, Alice 先手。总共有n个石子排成一行。轮到某个玩家的回合时,如果石子的数目 大于 1,他将执行以下操作:选择一个整数x > 1,并且 移除最左边的x个石子。将移除的石子价值之 和累加到该玩家的分数中。将一个 新的石子放在最左边,且新石子的值为被移除石子值之和。当只剩下 一个石子时,游戏结束。Alice 和 Bob 的 分数之差为(Alice 的分数- Bob 的分数)。Alice 的目标是...

2021-05-24 09:03:31 554 1

原创 JAVA程序设计:向下取整数对和(LeetCode:1862)

给你一个整数数组nums,请你返回所有下标对0 <= i, j < nums.length的floor(nums[i] / nums[j])结果之和。由于答案可能会很大,请你返回答案对109 + 7取余的结果。函数floor()返回输入数字的整数部分。示例 1:输入:nums = [2,5,9]输出:10解释:floor(2 / 5) = floor(2 / 9) = floor(5 / 9) = 0floor(2 / 2) = floor(5 / ...

2021-05-20 09:01:05 309

原创 网易历届笔试题(11)

题目描述小Q是篮球训练队的教练,篮球队新加入了N名队员,第i名队员的篮球水平值为ai。小Q现在要把他们按照以下的要求分为A队和B队进行训练:1、A队的队员水平值之和严格大于B队的队员水平值之和2、对于A队中的任意一名队员,如果把他分配到B队,A队的水平值之和就会严格小于B队的水平值之和。3、每个队员必须要加入一个队伍小Q现在想知道有多少种方案可以按照以上要求完成分队。输入描述:输入包括两行, 输入的第一行为一个正整数n(2 <= N <= 50), 表示队员的数量。第二

2021-04-28 21:12:31 485

原创 网易历届笔试题(10)

题目描述小易很喜欢斑马,因为它们身上黑白相间的花纹。一天小易得到了一串橡皮泥,这串橡皮泥只有黑色和白色,小易想把这串橡皮泥重新拼凑一下,让这个橡皮泥串中最长的连续的黑白相间的子串最长,但是小易有强迫症,所以他可以对橡皮泥串进行以下的操作0次或多次:把橡皮泥串从某个地方切割开,将两个得到的两个串同时翻转,再拼接在一起。这个橡皮泥串可能太长了,所以小易没有办法计算最终可以得到的最长的连续的黑白相间的子串的长度,希望你能帮他计算出这个长度。输入描述:一个字符串s,只包含字母'b'和字母'w',

2021-04-28 18:32:48 421

原创 网易历届笔试题(9)

题目描述随着又一届学生的毕业,社团主席换届选举即将进行。一共有n个投票者和m个候选人,小易知道每一个投票者的投票对象。但是,如果小易给某个投票者一些糖果,那么这个投票者就会改变他的意向,小易让他投给谁,他就会投给谁。由于小易特别看好这些候选人中的某一个大神,这个人的编号是1,所以小易希望能尽自己的微薄之力让他当选主席,但是小易的糖果数量有限,所以请你帮他计算,最少需要花多少糖果让1号候选人当选。某个候选人可以当选的条件是他获得的票数比其他任何候选者都多。输入描述:第一行两个整数n...

2021-04-27 23:22:50 353

原创 HDU 2609 How many(最小表示法)

大致题意:给你n个字符串,问你有多少个非同构字符串,两个字符串同构当且仅当通过循环移位之后能表示成同一字符串。思路:一个比较优美的解决方法是首先求出每个串的最小表示,然后借助map判断该最小表示字符串是否出现过即可。import java.util.*;public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); Map..

2021-04-19 10:23:37 217

原创 网易历届笔试题(8)

题目描述又到了周末,小易的房间乱得一团糟。他希望将地上的杂物稍微整理下,使每团杂物看起来都紧凑一些,没有那么乱。地上一共有n团杂物,每团杂物都包含4个物品。第i物品的坐标用(ai,bi)表示,小易每次都可以将它绕着(xi,yi)逆时针旋转90∘90∘,这将消耗他的一次移动次数。如果一团杂物的4个点构成了一个面积不为0的正方形,我们说它是紧凑的。因为小易很懒,所以他希望你帮助他计算一下每团杂物最少需要多少步移动能使它变得紧凑。输入描述:第一行一个数n(1 <= n &l...

2021-04-16 16:08:15 242

原创 网易历届笔试题(7)

题目描述小易参加了一个骰子游戏,这个游戏需要同时投掷n个骰子,每个骰子都是一个印有数字1~6的均匀正方体。小易同时投掷出这n个骰子,如果这n个骰子向上面的数字之和大于等于x,小易就会获得游戏奖励。小易想让你帮他算算他获得奖励的概率有多大。输入描述:输入包括两个正整数n和x(1 ≤ n < 25, 1 ≤ x < 150),分别表示骰子的个数和可以获得奖励的最小数字和。输出描述:输出小易可以获得奖励的概率。如果概率为1,输出1,如果概率为0,输出0,其他以最简分数(x

2021-04-15 14:28:14 398

原创 JAVA程序设计:得到新鲜甜甜圈的最多组数(LeetCode:1815)

有一个甜甜圈商店,每批次都烤batchSize个甜甜圈。这个店铺有个规则,就是在烤一批新的甜甜圈时,之前 所有甜甜圈都必须已经全部销售完毕。给你一个整数 batchSize和一个整数数组 groups,数组中的每个整数都代表一批前来购买甜甜圈的顾客,其中 groups[i]表示这一批顾客的人数。每一位顾客都恰好只要一个甜甜圈。当有一批顾客来到商店时,他们所有人都必须在下一批顾客来之前购买完甜甜圈。如果一批顾客中第一位顾客得到的甜甜圈不是上一组剩下的,那么这一组人都会很开心。你可以随意安排...

2021-04-12 23:31:24 308

原创 JAVA程序设计:变换的迷宫(LCP 31)

某解密游戏中,有一个 N*M 的迷宫,迷宫地形会随时间变化而改变,迷宫出口一直位于 (n-1,m-1) 位置。迷宫变化规律记录于 maze 中,maze[i] 表示 i 时刻迷宫的地形状态,"." 表示可通行空地,"#" 表示陷阱。地形图初始状态记作 maze[0],此时小力位于起点 (0,0)。此后每一时刻可选择往上、下、左、右其一方向走一步,或者停留在原地。小力背包有以下两个魔法卷轴(卷轴使用一次后消失):临时消除术:将指定位置在下一个时刻变为空地;永久消除术:将指定位置永久变为空地。请

2021-04-12 22:39:04 338

原创 JAVA程序设计:序列中不同最大公约数的数目(LeetCode:5725)

给你一个由正整数组成的数组nums。数字序列的最大公约数定义为序列中所有整数的共有约数中的最大整数。例如,序列[4,6,16]的最大公约数是2。数组的一个子序列本质是一个序列,可以通过删除数组中的某些元素(或者不删除)得到。例如,[2,5,10]是[1,2,1,2,4,1,5,10]的一个子序列。计算并返回nums的所有非空子序列中不同最大公约数的数目。示例 1:输入:nums = [6,10,3]输出:5解释:上图显示了所有...

2021-04-04 12:16:29 326

原创 小团无路可逃(美团2020年秋招笔试题)

小团惹小美生气了,小美要去找小团“讲道理”。小团望风而逃,他们住的地方可以抽象成一棵有n个结点的树,小美位于 x 位置,小团位于 y 位置。小团和小美每个单位时间内都可以选择不动或者向相邻的位置转移,很显然最终小团会无路可逃,只能延缓一下被“讲道理”的时间,请问最多经过多少个单位时间后,小团会被追上。格式:输入:- 输入第一行包含三个整数 n,x,y,分别表示树上的结点数量,小美所在的位置和小团所在的位置。- 接下来有 n-1 行,每行两个整数 u,v,表示 u 号位置和 v 号位置之间有一条

2021-04-01 14:23:23 1349 1

空空如也

空空如也

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

TA关注的人

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