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

Грешка в Judge

Здравейте,
моля някой да ми обясни, каква е разликата м/у "грешка при изпълнение" и "грешен отговор" в Judge.
В IDE всичко е О.К., но в Judge, вместо червени хиксчета "х" (грешен отговор), ми излизат червени снежинки (грешка при изпълнение).
Какво да правя сега?


 

Тагове:
0
Programming Basics with Java
Darinna avatar Darinna 2 Точки
import java.util.Scanner;

public class DanceHall {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        int L = Integer.parseInt(scanner.nextLine());
        int W = Integer.parseInt(scanner.nextLine());
        int A = Integer.parseInt(scanner.nextLine());

        int hall = ( L * 100 ) * ( W * 100);
        int wardrobe = ( A * 100 ) * ( A * 100);
        int bench = hall / 10;
        int freeSpaceHall = hall - ( wardrobe + bench );

        int dancers = Math.round (freeSpaceHall / ( 40 + 7000 ));

        System.out.println(dancers);

    }
}

От задачата: Dance Hall. Опитах да заместя int с double, тогава judge гърми. Опитах да заместя умножаването по 100 с Math.pow(X,2), пак не става. 
0
The_assassin avatar The_assassin 158 Точки

Намерих задачата. Тя е „изпитна“, така че няма как да ти покаже какви са ти грешките, за това, аз ще ти предложа някои корекции. Всъщност, според условието, входните данни трябва да са DOUBLE:

diff --git a/DanceHall.java.old b/DanceHall.java
index b054040..62643ca 100644
--- a/DanceHall.java.old
+++ b/DanceHall.java
@@ -4,18 +4,18 @@ public class DanceHall {
     public static void main(String[] args) {
         Scanner scanner = new Scanner(System.in);
 
-        int L = Integer.parseInt(scanner.nextLine());
-        int W = Integer.parseInt(scanner.nextLine());
-        int A = Integer.parseInt(scanner.nextLine());
+        double L = Double.parseDouble(scanner.nextLine());
+        double W = Double.parseDouble(scanner.nextLine());
+        double A = Double.parseDouble(scanner.nextLine());
 
-        int hall = ( L * 100 ) * ( W * 100);
-        int wardrobe = ( A * 100 ) * ( A * 100);
-        int bench = hall / 10;
-        int freeSpaceHall = hall - ( wardrobe + bench );
+        double hall = (L * 100) * (W * 100);
+        double wardrobe = (A * 100) * (A * 100);
+        double bench = hall / 10;
+        double freeSpaceHall = hall - (wardrobe + bench);
 
-        int dancers = Math.round (freeSpaceHall / ( 40 + 7000 ));
+        double dancers = freeSpaceHall / (40 + 7000);
 
-        System.out.println(dancers);
+        System.out.printf("%.0f", Math.floor(dancers));
 
     }
 }

 

0
Darinna avatar Darinna 2 Точки

Благодаря много! Ще се поупражнявам с Math и с double :)

 

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