首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >每日一题(2022-05-04)——找出游戏的获胜者

每日一题(2022-05-04)——找出游戏的获胜者

作者头像
传说之下的花儿
发布2023-04-16 15:27:38
发布2023-04-16 15:27:38
2010
举报

1823. 找出游戏的获胜者

题目描述:

题解:

代码语言:javascript
复制
func findTheWinner(n int, k int) int {
	// eg:n=5 friends = [1,2,3,4,5] 里面的值就是第几个小朋友
	friends := make([]int, n)
	for i := 0; i < len(friends); i++ {
		friends[i] = i + 1
	}
	
	// 指针
	p := 0
	for {
		// 如果只剩1人,就是赢家
		if len(friends) == 1 {
			return friends[0]
		}
		// 循环队列,指向k-1个后的小盆友(k-1是因为计数时需要包含起始时的那位小伙伴)
		p = (p + k - 1) % len(friends)
		// 指导谁,谁输
		friends = append(friends[0:p], friends[p+1:]...)
	}
}

提交结果:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1823. 找出游戏的获胜者
    • 题目描述:
    • 题解:
    • 提交结果:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档