Den4xCode
@Den4xCode
Coder

Почему выдается Runtime-Error (RE) в тестах Яндекс контекст?

скрин с яндекс контеста, всего два теста надо было пройти в задачи, они пройдены корректно стоит "OK" а потом пишет что runtime error (RE)
6501a17c01b3c191467481.png
нашел что значит ошибка, но опять же бред полный, потомучто во первых локально работет код без ошибок, а когда загружаю в поле для контеста то ответы также правильно он находит но потом пишет ошибку runtime крч полный бред.
6501a1d935904071495094.png

import java.io.FileReader;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
import java.util.concurrent.TimeUnit;

public class Ex1 {
    public static void main(String[] args) throws IOException, ParseException {
        FileReader fr = new FileReader("input.txt");
        Scanner scan = new Scanner(fr);

        String[] all_lines = new String[2];
        int count = 0;
        while (scan.hasNextLine()) {
            all_lines[count] = scan.nextLine();
            if (count == 1) {
                mainLogic(all_lines[0], all_lines[1]);
            }
            if (count > 1) {
                System.out.println(all_lines[count]);
            }
            count++;
        }

        fr.close();
        scan.close();
        System.exit(0);
    }

    static void mainLogic(String date1, String date2) throws ParseException {

        String year1 = getYear(date1);
        String year2 = getYear(date2);

        SimpleDateFormat dateformat = new SimpleDateFormat("MM dd HH mm ss");
        Date first = dateformat.parse(date1.replace(year1, "").trim());
        Date second = dateformat.parse(date2.replace(year2, "").trim());

        int yearsDiff_days = (Integer.parseInt(year2) - Integer.parseInt(year1)) * 365;
        long diffInMillies = second.getTime() - first.getTime();
        long diffDays = TimeUnit.DAYS.convert(diffInMillies, TimeUnit.MILLISECONDS) + yearsDiff_days;
        long otherSeconds = TimeUnit.SECONDS.convert(diffInMillies, TimeUnit.MILLISECONDS) % 86400;

        System.out.println(diffDays + " " + otherSeconds);

    }

    static String getYear(String str) {
        for (int i = 0; i < str.length(); i++) {
            if (str.charAt(i) == ' ') {
                return str.substring(0, i);
            }
        }
        return "Error!";
    }

}


если кто сталкивался с подобным помогите пожалуйста, время на тест у мен ограничено, а подобная ошибку уже на двух полностью решенных правильно задачах.

6501a47635803764692017.png6501a47b50805664257577.png
  • Вопрос задан
  • 407 просмотров
Пригласить эксперта
Ответы на вопрос 1
@stas1212
Зачем тебе этот яндекс шлак, если есть LeetCode
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
01 мая 2024, в 02:11
5000 руб./за проект
01 мая 2024, в 00:29
2000 руб./за проект
01 мая 2024, в 00:20
15000 руб./за проект