找出相同数字的最大连续子序列个数
找出相同数字的最长连续子序列
输入格式:
输入一个以0结束的整数序列
输出格式:
输出序列中相同数字组成的最长连续子序列的长度
输入样例:
在这里给出一组输入。例如
24488882440
①结尾无空行
输出样例
在这里给出相应的输出。例如:
4
①结尾无空行
import java.util.Scanner;
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
ArrayList<Integer> list = new <Integer>ArrayList();
do{
list.add(input.nextInt());
}while((int)list.get(list.size()-1) != 0);//获取数字序列
int count = 1;//计数器
int cnt = 1;//相同数字子序列最大的个数
for(int i = 0;i < list.size()-2;i++){
if(list.get(i).equals(list.get(i+1)))
count++;//如果一个数和后一个数相等,计数器加1
else {
if (cnt < count)
cnt = count;//如果计数器大于最大连续子序列个数,将计数器的值赋给它。
count = 1;//计数器置1
}
}
System.out.println(cnt);
}
}
以上是我的方法,但测试结果是答案错误。。只能通过一部分的测试用例。。实在找不出来有什么错误,有没有哪位知道的?