2024 02:07 用围棋的语言来说,一家公司准备组织会议,邀请名单就在那里

小夏 职场 更新 2024-02-09

2024-02-07:在 Go 语言中,一家公司准备组织一次邀请名单上有 n 名员工的会议,公司准备了一个可以容纳任意数量员工的圆桌会议,员工人数为 0 到 n - 1。 每个员工都有一个喜欢的员工,当且仅当他被安排在喜欢的员工旁边时,每个员工都会参加会议,而每个员工喜欢的员工不会是他自己。

为您提供一个整数数组,下标以 0 开头,f**orite,其中 f**orite[i] 表示第 i 个员工喜欢的员工。 请返回参加会议的最大员工人数。

输入:f**orite = [2,2,1,2]。

输出: 3. 回答:2024-02-07:

来自左承云。

敏捷 351.创建一个名为 maximuminvitations 的函数,该函数接受整数数组 f**orite 作为参数。 该函数返回可以参加会议的最大员工数。

2.在 maximuminvitations 函数中,首先调用 beloved 函数以生成一个点赞表,表示每个员工喜欢的员工。

3.调用 calculatedegree 函数来计算每个员工的摄入量,即喜欢该员工的员工数量。

4.初始化队列并使用该队列进行拓扑排序。

5.将条目为 0 的所有员工添加到队列中。

6.使用 zerovisited 数组记录已经访问过的员工。

7.当队列不为空时,将从队列中删除员工并标记为已访问。

8.遍历该员工喜欢的员工列表,将其条目减去 1,如果该条目减少到 0,则将该员工添加到队列中。

9.使用 cyclevisited 数组记录已访问的员工,并计算环上的员工数。

10.如果员工最喜欢的员工也喜欢自己,那么有一个长度为 2 的环来更新 arrangetwocycle 变量。

11.否则,遍历环上的五线谱,找到最长的环,然后更新 ArrangeMoreCycle 变量。

12.比较 arrangetwocycle 和 arrangemorecycle 的值,较大的值是最终结果。

13.返回最终结果。

总时间复杂度和附加空间复杂度如下:

时间复杂度:o(n 2),其中 n 是员工人数。 遍历每个员工需要 o(n) 个时间,查找和更新相关信息可能需要 o(n) 个时间。 空间复杂度:O(n),需要额外的空间来存储偏好关系、度数和访问状态等信息。

package mainimport "fmt"func maximuminvitations(f**orite int) int }zerovisited := make(bool, n) for l < r }cyclevisited := make(bool, n) arrangetwocycle := 0 arrangemorecycle := 0 for i := 0; i < n;i++ else if curans > arrangemorecycle}if arrangetwocycle > arrangemorecycle return arrangemorecycle} generate like table func beloved(f**orite int) [int loved := make(int, n) for i := 0;  i < n;i++ for i, f := range f**orite return loved} 找到每个点的摄入度func calculatedegree(loved int) [int return degree} cur is not on the loop follower chain maximum length func maxfollow(cur int, zeroed bool, from int) int ans := 0 for ,pre := range from[cur] return ans + 1}func main() result := maximuminvitations(f**orite) fmt.println(result)}

在此处插入说明。

相似文章

    2024 01:31 在围棋中,机器人正在玩一个基于DOS的旧游戏

    在 GO 中,机器人正在玩一个基于 DOS 的旧游戏,其中有 N 座建筑物,编号从 到 n,从左到右排列,编号为 的建筑物高度为 个单位,编号为 I 的建筑物高度为 h i 个单位,首先,机器人在编号为 的建筑物处,每走一步,它就会跳到下一个 右边 的建筑物。假设机器人在第 k 栋楼里,它当前的能量...

    揭开围棋语言常见错误的神秘面纱 100个避免掉坑的经典案例!

    ...

    芝麻GO任务是坑吗

    近日,芝麻GO任务在网络上引起了不少热议。有些人期待它作为轻松获利的捷径 其他人则警告说,这是一个巨大的坑,并建议人们远离。那么,芝麻GO任务是坑还是馅饼呢?让我们来看看。首先,对于芝麻GO任务,有人说他们只要做起来就可以轻松赚到一些零花钱。这似乎证明了这项任务的易用性和灵活性。然而,我们不能忽视这...

    女人是不是“恋爱领域的老手”,肢体语言就是答案

    肢体语言是彼此交流的最重要方式之一,揭示了一个人真实的内心想法和情绪状态。在情感交流中,女性通常被认为更敏感,更善于使用肢体语言。那么,一个女人的肢体语言是否能揭示她是否是一个爱情老手呢?本文将深入探讨这个问题,通过分析肢体语言的特征,揭示女性是否是爱情场景老手的答案。.进行眼神交流。眼神交流是肢体...

    女人的这些肢体话语暗示你“有戏剧性”,被忽略了

    在人际交往中,肢体语言往往比口头语言更真实,是内心情感的无声表达,有时甚至比言语更深刻。对于男性来说,阅读女性的肢体语言尤为重要,因为这可能是一个微妙的信号,表明他们在暗示你 好玩 女人的身体取向也可以揭示她的内心。在社交场合,如果一个女人的身体不自觉地面对着你,那么通常表明她对你感兴趣。这种取向不...