首页 > 其他分享 >1630.等差子数组

1630.等差子数组

时间:2023-03-23 22:47:00浏览次数:37  
标签:1630 right nums int maxv 数组 差子 minv left

class Solution {
public List checkArithmeticSubarrays(int[] nums, int[] l, int[] r) {
int n = l.length;
List ans = new ArrayList();
for (int i = 0; i < n; ++i) {
int left = l[i], right = r[i];
int minv = nums[left], maxv = nums[left];
for (int j = left + 1; j <= right; ++j) {
minv = Math.min(minv, nums[j]);
maxv = Math.max(maxv, nums[j]);
}

        if (minv == maxv) {
            ans.add(true);
            continue;
        }
        if ((maxv - minv) % (right - left) != 0) {
            ans.add(false);
            continue;
        }

        int d = (maxv - minv) / (right - left);
        boolean flag = true;
        boolean[] seen = new boolean[right - left + 1];
        for (int j = left; j <= right; ++j) {
            if ((nums[j] - minv) % d != 0) {
                flag = false;
                break;
            }
            int t = (nums[j] - minv) / d;
            if (seen[t]) {
                flag = false;
                break;
            }
            seen[t] = true;
        }
        ans.add(flag);
    }
    return ans;
}

}

标签:1630,right,nums,int,maxv,数组,差子,minv,left
From: https://www.cnblogs.com/rickierun/p/17249783.html

相关文章

  • C#结构体与byte数组相互转化
    ///<summary>///结构体转byte数组///</summary>///<paramname="structObj"></param>///<returns></returns>......
  • 最大子数组和
    题目描述: 给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组 是数组中的一个连续部分。输入:nums=[-2,1,......
  • 【leetcode-数组】有效的数独
    判断一个 9x9的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在......
  • day23 打卡669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转
    day23打卡669.修剪二叉搜索树108.将有序数组转换为二叉搜索树538.把二叉搜索树转换为累加树669.修剪二叉搜索树669题目链接1.迭代法classSolution{public......
  • react函数组件中,父组件调用子组件的方法
    使用ref来处理。父组件里面   子组件里面   ......
  • 用lambda表达式写一个数组映射
    #include<iostream>#include<vector>#include<algorithm>usingnamespacestd;intmain(){ //定义一个整数数组arr,包含五个元素:1,2,3,4,5。 intarr[]={......
  • CF1630E 题解
    题意传送门一个长度为$n$的环状序列${a_i}$,其中的数值满足$1\leqa_i\leqn$,序列中可能有相等的数。序列${a_i}$的一个排列和另外一个排列本质相同,当且......
  • 可持久化数组
    可持久化数组可以写一棵可持久化线段树,不过受到宇宙射线的影响,写了个奇奇怪怪的东西因为是单点修改、单点查询,线段树只有叶子结点有用中间结点没什么用还浪费空间,所以就......
  • Java数组的动态初始化与静态初始化和常见问题
    一、动态初始化数组的格式:数据类型[]数组名=new数据类型[数组长度];在创建的时候,由我们自己指定数组的长度,由虚拟机给出默认的初始化值。数组默认的初始值规律:1、......
  • 【leetcode-数组】有序矩阵中第K小的元素
    题目:给定一个 nxn 矩阵,其中每行和每列元素均按升序排序,找到矩阵中第 k 小的元素。请注意,它是排序后的第 k 小元素,而不是第 k 个不同的元素。 示例:matrix=[......