Java 并非所有口味的CodeChef DSA学习第2周

Java 并非所有口味的CodeChef DSA学习第2周,java,arrays,Java,Arrays,问题是有N块K种不同口味的蛋糕无序排列。我需要打印至少缺少一种味道的连续段的最大长度。 例如,如果N=20 K=6,数组为6 6 6 6 2 5 1 2 3 4 5 6 3 3 2 4 5 6 1 3,则应打印11,因为从第8个元素到第18个元素的长度最大,并且缺少味1。 我已经尝试了所有我能成功的测试用例,所有的测试用例都通过得很好。但在提交时给出了错误的答案。有人能帮我找出我在这个问题上错在哪里吗 import java.util.*; import java.lang.*; import

问题是有N块K种不同口味的蛋糕无序排列。我需要打印至少缺少一种味道的连续段的最大长度。
例如,如果N=20 K=6,数组为6 6 6 6 2 5 1 2 3 4 5 6 3 3 2 4 5 6 1 3,则应打印11,因为从第8个元素到第18个元素的长度最大,并且缺少味1。
我已经尝试了所有我能成功的测试用例,所有的测试用例都通过得很好。但在提交时给出了错误的答案。有人能帮我找出我在这个问题上错在哪里吗

import java.util.*;
import java.lang.*;
import java.io.*;
class Codechef{
    public static void main (String[] args) throws java.lang.Exception{
        Scanner sc=new Scanner(System.in);
        int t=sc.nextInt(),a[];
        long n,k,count=0,max=0;
        while(t--!=0){
            n=sc.nextLong();
            k=sc.nextLong();
            a=new int[(int)n];
            for(int i=0;i<n;i++) a[i]=sc.nextInt();
            if(k>n) System.out.println(n);
            else{
                for(int i=1;i<=k;i++){
                    for(int j=0;j<n;j++){
                        if(a[j]==i) count=0;
                        else{
                            count++;
                            max=max>count?max:count;
                        }
                    }
                    if(count==n) break;
                    count=0;
                }
            System.out.println(max);
            }
        }
    }
}
import java.util.*;
导入java.lang.*;
导入java.io.*;
类Codechef{
公共静态void main(字符串[]args)引发java.lang.Exception{
扫描仪sc=新的扫描仪(System.in);
int t=sc.nextInt(),a[];
长n,k,计数=0,最大值=0;
而(t-!=0){
n=sc.nextLong();
k=sc.nextLong();
a=新整数[(整数)n];
对于(int i=0;in)System.out.println(n);
否则{

对于(int i=1;我认为如果你在这个问题中解释代码应该做什么会有所帮助。这里的所有帖子都必须是独立的。这意味着所有的信息都需要在这个问题本身内。链接是不够的。谢谢,我会从下一次开始让我们足够小心。你说“从下一次”是什么意思?您可以编辑问题以将其包括在内。