爱吃蛋炒饭。 2021-12-18 22:59 采纳率: 66.7%
浏览 46
已结题

为什么java在本地的idea中正常编译运行,但是在洛谷在线ide中无法正常读入数据,以至于只输出个换行符就结束了

问题遇到的现象和发生背景

洛谷题目:https://www.luogu.com.cn/problem/P1098

为什么java在本地的idea中正常编译运行,但是在洛谷在线ide中无法正常读入数据,以至于只输出个换行符就结束了

问题相关代码,请勿粘贴截图
package test;

import java.io.*;

public class Test2{
    static StringBuilder strB = new StringBuilder();
    static StringBuilder strl = new StringBuilder();
    static BufferedReader ins = new BufferedReader(new InputStreamReader(System.in));
    static StreamTokenizer in = new StreamTokenizer(ins);
    static PrintWriter out = new PrintWriter(new OutputStreamWriter(System.out));

    public static void main(String[] args) throws IOException{
        char cz = '0';
        char cy = '0';
        in.nextToken();
        int p1 = (int)in.nval;
        in.nextToken();
        int p2 = (int)in.nval;
        in.nextToken();
        int p3 = (int)in.nval;
        int add = 0;
        if(p1 == 2)
        {
            add = 'A'-'a';
        }
        String str = ins.readLine();
//        System.out.println(str);
        int len = str.length();
        int i = 0;
        char cl;
        while(i<len)
        {
            cl = str.charAt(i);
            i++;
            if(cl == '-')
            {   // 玩意-在第一个,或者最后一个呢?这不就越界了?先不考虑
                if(i-2>=0&&i<len)
                {
                    cz = str.charAt(i-2);
                    cy = str.charAt(i);
                }
                if(cz>='a'&&cz<='z'&&cy>='a'&&cy<='z'&&cy>cz||cz>='0'&&cz<='9'&&cy>='0'&&cy<='9'&&cy>cz)
                {
                    int lk = 0;
                    if(cz>='a')
                    {
                        lk = 1;
                    }
                    for(char csl = (char)(cz+1);csl<cy;csl++)
                    {
                        for(int i1 = 0;i1<p2;i1++)
                        {
                            if(p1 == 3)
                            {
                                strl.append("*");
                                continue;
                            }
                            if(lk == 1)
                            {
                                strl.append((char)(csl+add));
                            }
                            else
                            {
                                strl.append(csl);
                            }
                        }
                    }
                    if(p3 == 2)
                    {
                        strl.reverse();
                    }
                    strB.append(strl);
                    strl.delete(0,strl.length());
                }
                if(cy<=cz||cz=='-')
                {
                    strB.append("-");
                }
            }
            else
            {
                strB.append(cl);
            }
        }
        out.print(strB);
        out.close();
    }
}

运行结果及报错内容

img

img

我的解答思路和尝试过的方法

会不会是因为这个,可我还是不懂啊

img

我想要达到的结果

能够在洛谷中正常编译运行,我应该保持哪种读入输出习惯?还望大家不吝赐教,谢谢了

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 12月26日
    • 修改了问题 12月18日
    • 创建了问题 12月18日

    悬赏问题

    • ¥15 如何让企业微信机器人实现消息汇总整合
    • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
    • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
    • ¥15 TLE9879QXA40 电机驱动
    • ¥20 对于工程问题的非线性数学模型进行线性化
    • ¥15 Mirare PLUS 进行密钥认证?(详解)
    • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
    • ¥20 想用ollama做一个自己的AI数据库
    • ¥15 关于qualoth编辑及缝合服装领子的问题解决方案探寻
    • ¥15 请问怎么才能复现这样的图呀