数组连续和
标题:数组连续和 | 时间限制:1秒 | 内存限制:65536K | 语言限制:不限
给定一个含有N个正整数的数组, 求出有多少个连续区间(包括单个正整数), 它们的和大于等于x。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(sc.hasNextLine()) {
String[] params = sc.nextLine().trim().split(" ");
int numCount = Integer.parseInt(params[0]);
int finalNumber = Integer.parseInt(params[1]);
String[] numstrArray2 = sc.nextLine().trim().split(" ");
int[] numArr = new int[numCount];
for (int i = 0; i < numCount; i++) {
numArr[i] = Integer.parseInt(numstrArray2[i]);
}
long sum = 0;
long count = 0;
int j = 0;
for (int i = 0; i < numCount; i++) {
sum += numArr[i];
while(sum >= finalNumber && j <= i) {
count += numCount - i;
sum -= numArr[j];
j++;
}
}
System.out.println(count);
}
sc.close();
}
}

华为HUAWEI工作强度 1363人发布