Runtime Error NZEC

I’m solving problem - CodeChef: Practical coding for everyone.
I’m getting error -
Exception in thread “main” java.lang.NumberFormatException: null
at java.lang.Integer.parseInt(Integer.java:542)
at java.lang.Integer.parseInt(Integer.java:615)
at Codechef.main(Main.java:16)

I’m beginner in codechef & facing this error frequently. When I try with custom input its working fine.
Please help me to find the problem.

Please find my code here -

/* package codechef; // don’t place package name! */

import java.util.;
import java.lang.
;
import java.io.*;

/* Name of the class has to be “Main” only if the class is public. */
class Codechef
{
static BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
static BufferedWriter out = new BufferedWriter(new OutputStreamWriter(System.out));

static int[] maxDayOfMonth = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
public static void main (String[] args) throws java.lang.Exception
{
    int tests = Integer.parseInt(in.readLine());
    while (tests-- > 0){
        String[] dateParts = in.readLine().split(":");
        int year = Integer.parseInt(dateParts[0]);
        int month = Integer.parseInt(dateParts[1]);
        int day = Integer.parseInt(dateParts[2]);
        
        if (isLeapYear(year)){
            maxDayOfMonth[1] = 29;
        }
        int count = 1;
        while ((addDays(day, month, 1)[0] & 1) == 0){
            int[] arr = addDays(day, month, 2);
            day = arr[0];
            month = arr[1];
            count++;
        }
        out.write(count + "\n");
    }
    out.flush();
    out.close();
    in.close();
}

static int[] addDays(int day, int month, int inc){
    day += inc;
    int maxDay = maxDayOfMonth[month - 1];
    if (day > maxDay){
        day -= maxDay;
        month = (month + 1) % 12;
    }
    int[] arr = {day, month};
    return arr;
}

static boolean isLeapYear(int year){
    if (year % 4 != 0){
        return false;
    }else if (year % 100 != 0){
        return true;
    }else if (year % 400 != 0){
        return false;
    }else{
        return true;
    }
}

}
}

Hi, I’m also getting the same runtime error, and neither Scanner object nor Integer.parseInt() is working.
Did you find why this happens and the way around it?

1 Like

I added input in input box.

Use try catch block

4 Likes

Works perfectly with this thanks.

Much thanks!