#13422. 【状压DP练习题】GYM102396 G

【状压DP练习题】GYM102396 G

题目描述

一共有nn个砝码,第ii个砝码的重量是aia_i,你需要放在天平上(两边至少得放一个)。

最终,你需要使得,天平两边砝码的重量,在mod mmod \ m意义下相同。

如果有解,输出任意一个方案,如果无解,就是我数据造错了。

输入格式

第一行n(n25)n(n\leq 25)m(m4×107)m(m\leq 4\times 10^7)

接下来一行nn个数字,表示ai(ai109)a_i(a_i\leq 10^9)

输出格式

第一行输出xx,表示左边放几个。

第二行输出左边的编号。

第三行输出yy,表示右边放几个。

第四行输出右边的编号。

样例 #1

样例输入 #1

4 14
1 3 7 10

样例输出 #1

1
4 
2
2 3

样例 #2

样例输入 #2

3 7
1 2 4

样例输出 #2

3
1 2 3 
0