#1061. 1-07F. 一姬的役满自动机

内存限制:512 MiB 时间限制:750 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: Komeiji Koishi

题目描述

你最终还是辜负了初心,与八木唯缔结了契约,一姬内心的怒火可想而知,她决定收回先前的善良,制造出传说中的役满自动机打飞你们!

当然,役满自动机对打点有着更高的要求,自然也就需要更高明的程序解决以下这个更高深的问题:

有一个大数MM,众所周知在模MM的意义下总共有0,1,2.....M10,1,2.....M-1MM个数字,现在把这MM个数字中的其中nn个给你,你的第ii个数字是aia_i,你可以任意取一个你自己拥有的数字xx,再取一个你没有获得的数字yy,那么所有可以这样所产生的(x+y)%M(x+y)\%M便可以被称为“能生成的数字”,其他的数字称为“不能生成的数字”(数字指的是[0,M1][0,M-1]中的整数)

请你求出有多少个不能生成的数字,它们分别是什么?

输入格式

第一行两个用空格隔开的正整数n,Mn,M

第二行nn个整数,用空格隔开,第ii个数字表示aia_i,aia_i应不重复,且从小到大输出

输出格式

第一行一个整数kk表示不能生成的数字个数

第二行kk个数字用空格隔开,表示kk个不能生成的数字

样例

样例输入

2 5
3 4

样例输出

1
2

数据范围与提示

1n21051\leq n\leq 2·10^5

n+1M109n+1\leq M\leq 10^9

0ai<M0\leq a_i<M