// yukicoder: 40 多項式の割り算 // 2019.6.2 bal4u #include #if 1 #define gc() getchar_unlocked() #else #define gc() getchar() #endif int in() // 整数の入力(負数対応) { int n = 0, c = gc(); if (c == '-') { c = gc(); do n = 10*n + (c & 0xf), c = gc(); while (c >= '0'); return -n; } do n = 10*n + (c & 0xf), c = gc(); while (c >= '0'); return n; } int main() { int i, D, a, s, t; int A, B, C; // ans: Ax^2 + Bx + C D = in(); C = in(); s = t = 0, i = 1; while (D--) { a = in(); s += a; if (i) t -= a; else t += a; i = !i; } A = (s + t) >> 1; B = s - A; if (A) printf("2\n%d %d %d\n", C, B, A); else if (B) printf("1\n%d %d\n", C, B); else printf("0\n%d\n", C); return 0; }