我已经编写了一个代码,该代码应该给出一个输出(“ YES”或“ NO”),以决定是否可以将数字转换为以'8'开头的11位数字。然后,按顺序输入为否。测试用例(整数),否。数字(整数)和一串数字组成。尽管没有编译错误,但是在提供输入时,我得到的输出甚至没有提供字符串输入。任何帮助将不胜感激!
我尝试使用Scanner和BufferReader进行输入,但仍然无法正常工作。
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
for(int i=0;i<t;i++) {
long n = sc.nextLong();
if(n<11) {
System.out.println("NO");
}
String s = sc.nextLine();
if(n==11) {
if(s.startsWith("8")) {
System.out.println("YES");
}
else {
System.out.println("NO");
}
}
else if(n>11) {
int ind = s.indexOf("8");
if(ind<= (n-11)) {
System.out.println("YES");
}
else {System.out.println("NO");}
}
}
当输入t = 1; n = 11; s = 82134975673时,我希望得到的结果是YES,但是我得到的是'NO'。当测试用例大于1时,也不需要输入任何字符串。