代码编织梦想

给你一个由 不同 整数组成的整数数组 arr 和一个整数 k

每回合游戏都在数组的前两个元素(即 arr[0]arr[1] )之间进行。比较 arr[0]arr[1] 的大小,较大的整数将会取得这一回合的胜利并保留在位置 0 ,较小的整数移至数组的末尾。当一个整数赢得 k 个连续回合时,游戏结束,该整数就是比赛的 赢家

返回赢得比赛的整数。

题目数据 保证 游戏存在赢家。

示例 1:

输入:arr = [2,1,3,5,4,6,7], k = 2
输出:5
解释:一起看一下本场游戏每回合的情况:

因此将进行 4 回合比赛,其中 5 是赢家,因为它连胜 2 回合。

示例 2:

输入:arr = [3,2,1], k = 10
输出:3
解释:3 将会在前 10 个回合中连续获胜。

示例 3:

输入:arr = [1,9,8,2,3,7,6,4,5], k = 7
输出:9

示例 4:

输入:arr = [1,11,22,33,44,55,66,77,88,99], k = 1000000000
输出:99

提示:

  • 2 <= arr.length <= 10^5
  • 1 <= arr[i] <= 10^6
  • arr 所含的整数 各不相同
  • 1 <= k <= 10^9
public class L1535 {

	public static void main(String[] args) {
		// TODO 自动生成的方法存根
		int []arr=new int[] {2,1,3,5,4,6,7};
		int x=getWinner(arr,2);
		System.out.println(x);

	}
    public static int getWinner(int[] arr, int k) {
    	 int max = Math.max(arr[0], arr[1]);//判断最大值
         if (k == 1) { //k=1 直接返回
             return max;
         }
         int count = 1; //计数器
         int maxNum = max;
         int length = arr.length;
         for (int i = 2; i <arr.length; i++) {
             if (max > arr[i]) {
            	 count++;
                 if (count == k) {
                     return max;
                 }
             } else {
            	 max = arr[i];
            	 count = 1;
             }
             maxNum =Math.max(maxNum, arr[i]);
         }
         return maxNum;
    }

}

 

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_64238242/article/details/128011880

leetcode1535. 找出数组游戏的赢家(Python3、c++)-爱代码爱编程

文章目录 leetcode1535. 找出数组游戏的赢家方法:模拟思路:代码:Python3:cpp:结果: leetcode1535. 找出数组游戏的赢家 给你一个由 不同 整数组成的整数数组 arr 和一个整数 k 。 每回合游戏都在数组的前两个元素(即 arr[0] 和 arr[1] )之间进行。比较 arr[0] 与 arr[1]

力扣 <数组> 1535. 找出数组游戏的赢家 中等-爱代码爱编程

题目 给你一个由 不同 整数组成的整数数组 arr 和一个整数 k 。 每回合游戏都在数组的前两个元素(即 arr[0] 和 arr[1] )之间进行。比较 arr[0] 与 arr[1] 的大小,较大的整数将会取得这一回合的胜利并保留在位置 0 ,较小的整数移至数组的末尾。当一个整数赢得 k 个连续回合时,游戏结束,该整数就是比赛的 赢家 。 返回

leetCode刷题日记-数组-面试题 1535. 找出数组游戏的赢家-爱代码爱编程

题目描述 题目链接:https://leetcode-cn.com/problems/find-the-winner-of-an-array-game/ 解题思路 我们先不考虑k值的情况,以示例1arr = [2,1,3,5,4,6,7],画出每个回合列表 的变化情况如下: 第一回合:2和1比较,原始列表(绿色背景)中1紧跟2,2胜 第二回合:原始

leetcode:1535. 找出数组游戏的赢家(数组)-爱代码爱编程

题目: 分析:一道逻辑分析题。 //还是具有一定的思维挑战性,但是对本人来说分分析就ook啦! //首先明确,不会有第二轮,因为到了最大的数整个问题就会终止了。 //换到首个位置算一次胜利,这个是本题的难点。 代码: class Solution { public: int getWinner(vector<int>&am

LeetCode1535. 找出数组游戏的赢家-爱代码爱编程

首先,按题意走,被题目中的移动干扰,并没有注意大数据集 代码: package com.LeetCode1.Array; public class Leet1535 { public static void main(String[] args) { int[] arr = {2,1,3,5,4,6,7}; System.out.printl

Leetcode 1535.找出数组游戏的赢家-爱代码爱编程

思路:   首先考虑 k=1 的情况,当k=1 时,只有 arr[0] 和 arr[1] 之间有一回合游戏,由于一定能分出胜负,因此直接返回 arr[0] 和 arr[1] 中的最大值即可。   k > 1时,每回合游戏之后,较小的整数移至数组的末尾。其实,并不需要对数组进行更新。在第一回合游戏之后,无论arr[0] 和arr[1] 当中谁取得胜利

数组 - 1535. 找出数组游戏的赢家-爱代码爱编程

题目: 给你一个由 不同 整数组成的整数数组 arr 和一个整数 k 。 每回合游戏都在数组的前两个元素(即 arr[0] 和 arr[1] )之间进行。比较 arr[0] 与 arr[1] 的大小,较大的整数将会取得这一回合的胜利并保留在位置 0 ,较小的整数移至数组的末尾。当一个整数赢得 k 个连续回合时,游戏结束,该整数就是比赛的 赢家

数组 leetcode 1535. 找出数组游戏的赢家-爱代码爱编程

题目内容 给你一个由 不同 整数组成的整数数组 arr 和一个整数 k 。 每回合游戏都在数组的前两个元素(即 arr[0] 和 arr[1] )之间进行。比较 arr[0] 与 arr[1] 的大小,较大的整数将会取得这一回合的胜利并保留在位置 0 ,较小的整数移至数组的末尾。当一个整数赢得 k 个连续回合时,游戏结束,该整数就是比赛的 赢家 。

leetcode 1535. 找出数组游戏的赢家-爱代码爱编程

一.题目描述 https://leetcode-cn.com/problems/find-the-winner-of-an-array-game/ 二.解法 <1>flag初始等于0,记录当前连胜次数,winner记录连胜数字 <2>当flag小于指定次数k时,不断重复比较 <3>比较arr[0]与ar

算法——1535、找出数组游戏的赢家-爱代码爱编程

这道题每一次比较,都将较小值放到数组最后,将最大值放到数组第一位,下标的变化满足循环数组 的下标变化规律,除此之外,这道题有个隐含的条件,就是当 k 的值大于等于 n - 1的时候,就是在 求整个数组的最大值 class Solution { public: int getWinner(vector<int>& arr, in

Leetcode-1535. 找出数组游戏的赢家-爱代码爱编程

链接 1535. 找出数组游戏的赢家 题目 给你一个由 不同 整数组成的整数数组 arr 和一个整数 k 。 每回合游戏都在数组的前两个元素(即 arr[0] 和 arr[1] )之间进行。比较 arr[0] 与 arr[1] 的大小,较大的整数将会取得这一回合的胜利并保留在位置 0 ,较小的整数移至数组的末尾。当一个整数赢得 k 个连续回

LeetCode 1535. 找出数组游戏的赢家-爱代码爱编程

1535. 找出数组游戏的赢家 给你一个由 不同 整数组成的整数数组 arr 和一个整数 k 。 每回合游戏都在数组的前两个元素(即 arr[0] 和 arr[1] )之间进行。比较 arr[0] 与 arr[1] 的大小,较大的整数将会取得这一回合的胜利并保留在位置 0 ,较小的整数移至数组的末尾。当一个整数赢得 k 个连续回合时,游戏结束,该整数就

unity vr 开发教程: oculus 一体机开发 (一) 环境配置(基于 oculus integration v46)_yy-nb的博客-爱代码爱编程

文章目录 📕教程说明📕安装 Unity 时需要添加的模块📕设置 Unity 的 Build Settings📕导入 Oculus Integration📕设置 Project Settings⭐通用设置⭐Render

unity视差贴图多实现对比和改进_瘦瘦的小北的博客-爱代码爱编程

视差贴图多种实现方式对比和改进 视差贴图视差映射陡峭视差映射视差遮蔽映射迭代视差映射-kerry 视差贴图 参考 与法线贴图相同,可以模拟出物体得深度感,同时它得改进是能够随着视角得偏移显示不同得深度

ios适配unity-2019_一品大帅的博客-爱代码爱编程

iOS适配Unity-2019 背景 由于2019起,Unity的Xcode工程,更改了项目结构。 Unity 2018的结构: 可以看Targets只有一个Unity-iPhone,Unity-iPhone直接

unity recttransform 组件_unityrecttransform-爱代码爱编程

文章目录 1.RectTransform 介绍2.Anchor 锚点3.Pivot 轴心点4.RectTransform API 属性4.1 anchorMax、anchorMin —— 锚点矩形4.2 off