You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Relevel测试IDE中Java代码的输入输出格式规范是什么?

Relevel测试IDE Java提交输入输出规范

本地代码运行正常但平台判题不通过,基本都是输入输出格式不符合平台判题规则导致的——平台判题采用完全精确的字符串匹配逻辑,输出和标准答案差一个空格、一个换行都会直接判定错误,具体规则如下:

输入规则

  • 仅允许通过标准输入流读取测试数据,禁止写死本地文件路径、禁止依赖IDE的弹窗交互输入
    • 优先使用BufferedReader读取输入,相比Scanner效率更高,大数据量测试用例下不会触发超时;如果使用Scanner,注意不要和其他输入流混用
    • 严格按照题目给出的输入顺序、输入格式读取数据,不要自行跳过输入项、也不要主观臆断输入行数
    • 字符串转数值类型前,必须调用trim()方法裁剪首尾的空白字符、换行符,避免转换异常
  • 读取输入的过程中,禁止打印任何交互提示内容,比如请输入参数:这类文字会被直接判定为输出内容错误。

输出规则

  • 仅允许通过标准输出流打印结果,禁止将结果写入本地文件
  • 输出内容必须和题目要求100%匹配:
    • 严格按照题目要求的顺序输出结果,多组测试用例的输出顺序不能调换
    • 分隔符必须和要求完全一致:要求用空格分隔就不要用换行,要求换行分隔就不要用空格
    • 数值输出严格匹配精度要求:要求保留2位小数就不能输出整数,要求输出整数就不能带多余的小数位0
    • 输出末尾不能加题目没要求的多余空格、多余空行
  • 禁止输出任何题目没要求的内容:包括调试用的日志打印、运行提示、异常栈信息,提交前必须删掉所有调试用的打印语句。

高频踩坑点

80%以上的判题失败和代码逻辑无关,都是踩了下面的低级错误

  • 类名没有设置为Main,平台找不到程序入口直接运行失败
  • 打印结果时不小心多打了标点、首尾空格
  • 循环输出时多换了行,或者最后一个输出项后面多带了分隔符
  • 本地测试时写死了测试数据,提交时没删掉硬编码逻辑,代码没有读取平台传入的测试用例
  • 异常捕获块里写了错误打印逻辑,运行触发异常时直接把异常信息输出到控制台,被判定为错误输出

可直接复用的标准提交模板

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        // 示例:读取第一行的整数输入,可根据题目输入要求替换读取逻辑
        int inputNum = Integer.parseInt(br.readLine().trim());
        // 在此处编写核心解题逻辑
        int res = 0;
        for (int i = 1; i <= inputNum; i++) {
            res += i;
        }
        // 严格按题目要求输出结果,不要加多余内容
        System.out.println(res);
        br.close();
    }
}

内容的提问来源于stack exchange,提问作者Saurav SE

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 13:39:18