首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >我的java程序在uva.onlinejudge.org上提交时显示了运行时错误。

我的java程序在uva.onlinejudge.org上提交时显示了运行时错误。
EN

Stack Overflow用户
提问于 2015-03-05 20:48:09
回答 1查看 1.1K关注 0票数 0

我试图解决一个uva问题“贪婪的礼物赠送者”(问题编号119,链接:problem&problem=55 )。我正在使用java来解决这个问题,在我的计算机上运行它时,我的代码工作得很好,但问题是当我将它提交给uva在线判断时,它显示了运行时错误。我不知道问题出在哪里。我对运行时错误也知之甚少。下面给出了我的代码

代码语言:javascript
代码运行次数:0
运行
复制
import java.util.Scanner;

public class Main {

    public static void main(String[] args) {

        Scanner inp = new Scanner(System.in);
        int n = 0;
        String name[];
        int cost[];
        while (inp.hasNextLine()) {
            n = inp.nextInt();
            name = new String[n];
            cost = new int[n];

            for (int i = 0; i < n; i++) {
                name[i] = inp.next();
            }

            for (int p = 0; p < n; p++) {
                String temp_name = inp.next();
                for (int i = 0; i < n; i++) {
                    if (temp_name.equals(name[i])) {
                        int gift = inp.nextInt(), num = inp.nextInt();
                        if (num != 0 && gift >= 0) {
                            cost[i] -= (int) (gift / num) * (int) num;
                        }
                        for (int k = 0; k < num; k++) {
                            String temp_name_2 = inp.next();
                            for (int j = 0; j < n; j++) {
                                if (temp_name_2.equals(name[j])) {
                                    if (num != 0 && gift >= 0) {
                                        cost[j] += gift / num;
                                    }
                                    break;
                                }
                            }
                        }
                        break;
                    }
                }
            }
            for (int i = 0; i < n; i++) {
                System.out.println(name[i] + " " + cost[i]);
            }
        }
    }

}
EN

回答 1

Stack Overflow用户

发布于 2015-03-05 22:26:10

我认为错误在于您使用的是System.in,而在线判断器为程序的输入提供了一个文件。输入部分的最后一个字符串:

输入由一个或多个组组成,并由结束文件终止.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28887411

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档