import java.math.BigInteger;

/**
 * Created by william on 11/27/2015.
 */
public class Solution {
    public static void main(String[] args) {

    }

    public static final class Resolver {
        public static BigInteger resolve(int input) {
            throw new UnsupportedOperationException();

        }
    }
}



@@ -21,16 +21,78 @@
 Integer;
+%0Aimport java.util.Scanner;%0Aimport java.util.stream.LongStream;
 %0A%0A/**%0A *
@@ -203,167 +203,512 @@
 ) %7B%0A
-%0A    %7D%0A%0A    public static final class Resolver %7B%0A        public static BigInteger resolve(int input) %7B%0A            throw new UnsupportedOperationException(
+        try (final Scanner scanner = new Scanner(System.in)) %7B%0A            final int n = scanner.nextInt();%0A            System.out.println(Resolver.resolve(n));%0A        %7D%0A%0A    %7D%0A%0A    public static final class Resolver %7B%0A        public static BigInteger resolve(int input) %7B%0A            return LongStream.rangeClosed(1, input)%0A                    .parallel()%0A                    .mapToObj(BigInteger::valueOf)%0A                    .reduce(BigInteger::multiply)%0A                    .orElse(BigInteger.ONE
 );%0A
-%0A
     

update problem 'extra-long-factorials' with solution implementation