华为OD机试E卷 - 最长连续子序列 Java
题目描述
有N个正整数组成的一个序列。给定整数sum,求长度最长的连续[子序列],使他们的和等于sum,返回此子序列的长度,
如果没有满足要求的序列,返回-1。
输入描述
第一行输入是:N个正整数组成的一个序列
第二行输入是:给定整数sum
输出描述
最长的连续子序列的长度
备注
- 输入序列仅由数字和英文逗号构成,数字之间采用英文逗号分隔
- 序列长度:1 <= N <= 200
- 输入序列不考虑异常情况
示例1
输入
1,2,3,4,2
6
输出
3
说明
1,2,3和4,2两个序列均能满足要求,所以最长的连续序列为1,2,3,因此结果为3。
示例2
输入
1,2,3,4,2
20
输出
-1
说明
没有满足要求的子序列,返回-1
Java
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] nums
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
机试E卷D卷刷题日记 文章被收录于专栏
机试刷题记录