我在代码厨师上尝试了Rainbow数组问题: Java中的question。 我的解决方案通过了问题中提到的所有三个测试用例,但是我不明白为什么我的solution不被接受。 。请让我知道我要进行哪些修改,为什么?
厨师和Rainbow阵列
厨师同样喜欢所有数组。但是他比其他人更平等地喜欢某些阵列。特别是,他喜欢Rainbow Arrays。
如果数组具有以下结构,则该数组为Rainbow:
输入
输出
约束
子任务 子任务1(100分):原始约束
示例
输入
3
19
1 2 3 4 4 5 6 6 6 7 6 6 6 5 4 4 3 2 1
14
1 2 3 4 5 6 7 6 5 4 3 2 1 1
13
1 2 3 4 5 6 8 6 5 4 3 2 1
输出
是
否
否
我的解决方案:
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Codechef
{
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int T=sc.nextInt();
while(T-->0)
{
int N=sc.nextInt();
int A[]=new int[N];
for (int i = 0; i < A.length; i++) {
A[i]=sc.nextInt();
}
int flag=0;
//taking the length to iterate over upto the half if the array
int len;
if(N%2==0) {
len=N/2;
}
else {
len=(N/2)+1;
}
//Condition 1: palandrome or nor
//Condition 2: 7 present or not
for (int i = 0; i < len; i++) {
if(A[i]!=A[N-1-i] || A[len-1]!=7) {
flag=1;
break;
}
}
//System.out.println("Flag: "+flag);
if(flag==0) {
System.out.println("yes");
}else {
System.out.println("no");
}
}
}
}