java 给定未排序的非负整数数组,找到一个连续的子数组,它会增加给定的数字。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 给定未排序的非负整数数组,找到一个连续的子数组,它会增加给定的数字。相关的知识,希望对你有一定的参考价值。
import java.util.Scanner;
class Library {
public static void main (String[] args) {
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
for(int i = 0 ; i < T ; i ++)
{
int N = sc.nextInt();
int S = sc.nextInt();
int [] numbers = new int[N];
for(int j = 0 ; j < N ; j ++)
{
numbers[j] = sc.nextInt();
}
int start = 0 ;
int end =0;
int sum =numbers[0] ;
boolean found = false;
for(int j = 1 ; j < N ; )
{
if(sum < S)
{
sum +=numbers[j];
end=j;
if(sum==S)
{
System.out.println( (start+1)+ " " + (end+1));
found = true;
break;
}
j++;
}
else if(sum > S)
{
sum-= numbers[start];
start++;
}
else
{
System.out.println( (start+1)+ " " + (end+1));
found = true;
break;
}
}
if(!found)
System.out.println(-1);
}
}
}
以上是关于java 给定未排序的非负整数数组,找到一个连续的子数组,它会增加给定的数字。的主要内容,如果未能解决你的问题,请参考以下文章
2022-02-21:不含连续1的非负整数。 给定一个正整数 n ,返回范围在 [0, n] 都非负整数中,其二进制表示不包含 连续的 1 的个数。 输入: n = 5 输出: 5 解释: 下面是带
Leetcode 600.不包含连续1的非负整数
Leetcode 600 不含连续1的非负整数
python面试题- 二分法查找给定一个已排序的非重复整数数组和一个目标值,如果找到目标,则返回索引。
中位数: 给定一个未排序的整数数组,找到其中位数。
2021-09-30:加一。给定一个由 整数 组成的 非空 数组所表示的非负整数,在该数的基础上加一。最高位数字存放在数组的首位, 数组中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数