Помогите пожалуйста, в чем проблема кода? Валидатор не соглашается с моей логикой деления массива пополам +1 для определения большего куска буфера байт.
package com.javarush.task.task18.task1808;
/*
Разделение файла
*/
import java.io.*;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String filenamemain = reader.readLine();
String filenamefirsthalf = reader.readLine();
String filenamesecondhalf = reader.readLine();
FileInputStream inputStream = new FileInputStream(filenamemain);
FileOutputStream outputStream1 = new FileOutputStream(filenamefirsthalf);
FileOutputStream outputStream2 = new FileOutputStream(filenamesecondhalf);
byte[]buffer = new byte[inputStream.available()];
if(inputStream.available()>0){
inputStream.read(buffer);
}
if (!(buffer.length%2==0)){
outputStream1.write(buffer, 0, ((buffer.length/2) + 1));
outputStream2.write(buffer, (buffer.length -((buffer.length/2)+1)), buffer.length );
}else {
outputStream1.write(buffer, 0, buffer.length/2);
outputStream2.write(buffer, buffer.length/2+1, buffer.length);
}
reader.close();
inputStream.close();
outputStream1.close();
outputStream2.close();
System.out.println();
}
}