无法在for循环中接受多个输入

时间:2019-05-27 14:21:24

标签: java

我已经编写了一个代码,该代码应该给出一个输出(“ 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时,也不需要输入任何字符串。

0 个答案:

没有答案