当前位置: 首页 > news >正文

集团网站开发多少钱网站建设书店目标客户分析

集团网站开发多少钱,网站建设书店目标客户分析,网站设计软件手机版,软件商店安装app【LetMeFly】2682.找出转圈游戏输家 力扣题目链接:https://leetcode.cn/problems/find-the-losers-of-the-circular-game/ n 个朋友在玩游戏。这些朋友坐成一个圈,按 顺时针方向 从 1 到 n 编号。从第 i 个朋友的位置开始顺时针移动 1 步会到达第 (i …

【LetMeFly】2682.找出转圈游戏输家

力扣题目链接:https://leetcode.cn/problems/find-the-losers-of-the-circular-game/

n 个朋友在玩游戏。这些朋友坐成一个圈,按 顺时针方向1n 编号。从第 i 个朋友的位置开始顺时针移动 1 步会到达第 (i + 1) 个朋友的位置(1 <= i < n),而从第 n 个朋友的位置开始顺时针移动 1 步会回到第 1 个朋友的位置。

游戏规则如下:

1 个朋友接球。

  • 接着,第 1 个朋友将球传给距离他顺时针方向 k 步的朋友。
  • 然后,接球的朋友应该把球传给距离他顺时针方向 2 * k 步的朋友。
  • 接着,接球的朋友应该把球传给距离他顺时针方向 3 * k 步的朋友,以此类推。

换句话说,在第 i 轮中持有球的那位朋友需要将球传递给距离他顺时针方向 i * k 步的朋友。

当某个朋友第 2 次接到球时,游戏结束。

在整场游戏中没有接到过球的朋友是 输家

给你参与游戏的朋友数量 n 和一个整数 k ,请按升序排列返回包含所有输家编号的数组 answer 作为答案。

 

示例 1:

输入:n = 5, k = 2
输出:[4,5]
解释:以下为游戏进行情况:
1)第 1 个朋友接球,第 1 个朋友将球传给距离他顺时针方向 2 步的玩家 —— 第 3 个朋友。
2)第 3 个朋友将球传给距离他顺时针方向 4 步的玩家 —— 第 2 个朋友。
3)第 2 个朋友将球传给距离他顺时针方向 6 步的玩家 —— 第 3 个朋友。
4)第 3 个朋友接到两次球,游戏结束。

示例 2:

输入:n = 4, k = 4
输出:[2,3,4]
解释:以下为游戏进行情况:
1)第 1 个朋友接球,第 1 个朋友将球传给距离他顺时针方向 4 步的玩家 —— 第 1 个朋友。
2)第 1 个朋友接到两次球,游戏结束。

 

提示:

  • 1 <= k <= n <= 50

方法一:模拟

开辟一个长度为 n n n的布尔类型的数组 v i s i t e d visited visited,初始值全部为 0 0 0,用来记录哪个小朋友拿到过球。

使用两个变量 w h o who who t h th th分别记录当前球在谁的手里、这是第几次传球。

v i s i t e d [ w h o ] visited[who] visited[who] f a l s e false false时,不断更新 v i s i t e d visited visited w h o who who t h th th

最终,遍历一遍 v i s i t e d visited visited数组,将没接到过球的娃子添加到答案数组中即可。

  • 时间复杂度 O ( n ) O(n) O(n),每个人最多接到球 1 1 1次(第二次还没接就退出循环了)
  • 空间复杂度 O ( n ) O(n) O(n)

AC代码

C++

class Solution {
public:vector<int> circularGameLosers(int n, int k) {vector<bool> visited(n);int who = 0, th = 0;while (!visited[who]) {visited[who] = true;who = (who + ++th * k) % n;}vector<int> ans;for (int i = 0; i < n; i++) {if (!visited[i]) {ans.push_back(i + 1);}}return ans;}
};

Python

# from typing import Listclass Solution:def circularGameLosers(self, n: int, k: int) -> List[int]:visited = [False] * nwho, th = 0, 0while not visited[who]:visited[who] = Trueth += 1who = (who + th * k) % nans = []for i in range(n):if not visited[i]:ans.append(i + 1)return ans

同步发文于CSDN,原创不易,转载经作者同意后请附上原文链接哦~
Tisfy:https://letmefly.blog.csdn.net/article/details/132311270

http://www.15wanjia.com/news/159529.html

相关文章:

  • 网站建设自查报告短视频平台开发
  • 常平网站建设公司云建站
  • 济南网站建设泰观网络前端和后端哪个好学
  • 做音乐网站首页要求腾冲网站建设的公司
  • 网站建设应该注意的问题中国建设机械教育网官方网站
  • 管家婆免费资料网站做公司网站费用
  • 资源网站优化排名软件asp 微信网站
  • 平陆县做网站邯郸网站设计培训
  • 广东平台网站建设制作wordpress更多
  • 广州建网站费用yum wordpress
  • 网站搭建工具的种类网站怎么放到服务器
  • 建设电商网站报价广告设计公司设计收费标准
  • 南浔哪有做网站的设计logo名字
  • 免费网页上传网站有专门做房孑特卖的网站吗
  • 珠海网站设计平台泉州市建设局网站
  • 深圳外贸公司网站建设公司排名微网站 下载
  • 如何跟进psd做网站长沙优化网站关键词
  • 2015做导航网站iis做外网站点
  • 网站备案简介怎么写怎么做网站推销产品
  • 农产品电子商务网站建设要求某公司网络营销方案
  • 厦门做网站seo制作一个网站的步骤是什么
  • 可以自己做头像的网站制作企业宣传片的厂家
  • php 手机网站 模板好用吗
  • 忠县网站建设北京石景山私人影院哪里有
  • 网站建设电话销售录音wordpress建站 知乎
  • 个人简历模板网站手机网站 微信分享
  • 电子商务网站建设的认识上海产品网站建设
  • 企业培训网站哪个找房网站好
  • 外贸网站建设公司流程安徽网新科技集团
  • 东莞网站建设 模具聚名网是干嘛的