Loading...
tencho_vp avatar tencho_vp 2 Точки

Runtime Error

На задача BasketBattle от Programming Basics Exam 29 March 2015 Morning системата ми дава 60 точки, защото на първите 4 теста ми дава Runtime Error, при положение, че като ги компилирам на IntelliJ на моя компютър тези тестове не ми дават никаква компилационна грешка и печата правилно изходните данни..


judge ми дава следната грешка:


Exception in thread "main" java.lang.SecurityException: Not allowed: java.lang.RuntimePermission
at _$SandboxSecurityManager.checkPermission(_$SandboxExecutor.java:102)
at java.lang.SecurityManager.checkExit(SecurityManager.java:761)
at java.lang.Runtime.exit(Runtime.java:107)
at java.lang.System.exit(System.java:971)
at BasketBattle.main(BasketBattle.java:44)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at _$SandboxExecutor.main(_$SandboxExecutor.java:38)
 

Тагове:
0
Programming Basics
nicktron avatar nicktron 10 Точки

Покажи си кода

0
tencho_vp avatar tencho_vp 2 Точки
import java.util.Scanner;
public class BasketBattle {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        String currentCompetitor = input.next();
        int rounds = input.nextInt();
        int nakovPoints=0;
        int simeonPoints=0;
        int points;
        String rate;
        for(int i=0;i<rounds;i++)
        {
            for(int j=0;j<2;j++)
            {
                points = input.nextInt();
                rate = input.next();
                if (currentCompetitor.equals("Nakov") )
                {
                    if(nakovPoints + points <= 500 && rate.equals("success")) {
                        nakovPoints = nakovPoints + points;
                        if (nakovPoints == 500) {
                            System.out.println("Nakov");
                            System.out.println(i+1);
                            System.out.print(simeonPoints);
                            System.exit(1);
                        }
                    }
                }
                if (currentCompetitor.equals("Simeon") )
                {
                    if(simeonPoints + points <= 500 && rate.equals("success")) {
                        simeonPoints += points;
                        if (simeonPoints == 500) {
                            System.out.println("Simeon");
                            System.out.println(i+1);
                            System.out.print(nakovPoints);
                            System.exit(1);
                        }
                    }
                }
                //switch current competitor if the first turn in the respective round finish
                if(j==0) {
                    if (currentCompetitor.equals("Nakov")) {
                        currentCompetitor = "Simeon";
                    } else {
                        currentCompetitor = "Nakov";
                    }
                }
            }
        }
        if(nakovPoints > simeonPoints)
        {
            System.out.println("Nakov");
            System.out.print(nakovPoints-simeonPoints);
        }
        else if(nakovPoints<simeonPoints)
        {
            System.out.println("Simeon");
            System.out.print(simeonPoints-nakovPoints);
        }
        else
        {
            System.out.println("DRAW");
            System.out.print(nakovPoints);
        }
    }
}
0
Innos avatar Innos 419 Точки

Гледайки ти error-a използваш System.Exit() което има много Security слабости така че е забранено в Judge.

На кратко не използай "System.exit()".

0
06/08/2016 17:27:10
tencho_vp avatar tencho_vp 2 Точки

вместо System.exit() кое да използвам?

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.