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

Dart代码提交URI OJ 1010题抛出FormatException格式错误

问题根因
  • 输入格式理解错误:URI 1010题的输入为2行内容,每行包含「商品编号、购买数量、商品单价」三个用空格分隔的字段,而非每个字段单独占一行。你本地测试时逐行输入单个数值,符合代码逻辑所以运行正常,但OJ测试用例的输入格式和你的预期不一致,因此触发线上报错。
  • 代码第一次调用int.parse(stdin.readLineSync()!)时,直接把包含空格的整行内容12 2 5.30传入整数转换方法,非合法整数字符串触发格式转换异常。
修复后的代码
import 'dart:io';

void main() {
  double total = 0;
  // 依次处理两行商品输入
  for (int i = 0; i < 2; i++) {
    List<String> inputParts = stdin.readLineSync()!.split(' ');
    int count = int.parse(inputParts[1]);
    double price = double.parse(inputParts[2]);
    total += count * price;
  }
  print('VALOR A PAGAR: R\$ ${total.toStringAsFixed(2)}');
}
核心修改点
  • 每次读取整行后先调用split(' ')按空格拆分得到字段数组,再取对应位置的字段做类型转换
  • 省略了无用的商品编号变量存储,简化逻辑

内容的提问来源于stack exchange,提问作者Mehedi Hasan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 07:54:03