Ниже привожу вариант своего решения, никак не пойму почему байты копируются подряд, а не в перемешку, валидатор почему-то принял, но хочется разобраться в чем ошибка?
public class Solution {
    public static void main(String[] args) {
        //напишите тут ваш код

        try (Scanner sc = new Scanner(System.in);
             var inputStream = Files.newInputStream(Paths.get(sc.nextLine()));
             var outputStream = Files.newOutputStream(Path.of(sc.nextLine()))
       ) {
                for (int i = 1; inputStream.available()>0; i++) {
               int first = inputStream.read();
                if (inputStream.available()>=1) {
                    int second = inputStream.read();
                    outputStream.write(second);
                    outputStream.write(first);
                } else {
                    outputStream.write(first);
                }
                System.out.println(outputStream);
            }
            } catch (IOException e) {
            System.out.println("Something went wrong : " + e);
        }

    }
    }