public class Euler101 {
    static long u(long n) {
        long result = 0, power = 1;
        for (int k = 0; k <= 10; k++) {
            result += ((k & 1) == 0 ? 1 : -1) * power;
            power *= n;
        }
        return result;
    }

    public static void main(String[] args) {
        long[] values = new long[11];
        for (int i = 0; i < 11; i++)
            values[i] = u(i + 1);
        long total = 0;
        for (int k = 1; k <= 10; k++) {
            double predicted = 0;
            for (int i = 0; i < k; i++) {
                double term = values[i];
                for (int j = 0; j < k; j++)
                    if (i != j)
                        term = term * (k + 1 - (j + 1.0)) / ((i + 1.0) - (j + 1.0));
                predicted += term;
            }
            long pred = Math.round(predicted);
            if (pred != values[k])
                total += pred;
        }
        System.out.println(total);
    }
}
