#2578. 最大不相似度

最大不相似度

题目描述

对于两个位数相等的二进制串A=(a1,a2,\red{A=(a_1,a_2,}…,an),B=(b1,b2,\red{a_n ),B=(b_1,b_2,}…,bn)\red{b_n)}

它们之间的不相似度由以下函数定义:

DIF(A,B)=i=1n[aibi]\red{DIF(A,B)=\sum_{i=1}^{n}{[a_i≠b_i ]} }

注:[m=n]\red{[m=n]}表示:如果m=n\red{m=n}成立,值为1\red{1,}否则值为0\red{0}

A=11001,B=01011\red{A=11001,B=01011,}DIF(A,B)=2\red{DIF(A,B)=2}

给定n\red{n}个长度为L\red{L}的二进制串S1,S2,\red{S_1,S_2,}…,Sn\red{S_n}

你的任务是找出长度为L\red{L}的二进制串T\red{T,}使得 min{DIF(S1,T),DIF(S2,T),,DIF(Sn,T)}\red{min\{DIF(S_1,T),DIF(S_2,T),…,DIF(S_n,T)\}}最大

满足条件的T\red{T}可能存在多个,你需要输出满足条件的T\red{T}的个数和这个最大值。

输入格式

第一行两个整数n,L(1\red{n,L(1≤}N\red{N≤}105,1\red{10^5,1≤}L\red{L≤}20)\red{20)}

然后n\red{n}行,每行一个长度为L\red{L}的字符串Si\red{S_i}

输出格式

输出一行,包含两个整数,满足条件的T\red{T}的个数和min{DIF(S1,T),DIF(S2,T),,DIF(Sn,T)}\red{min\{DIF(S_1,T),DIF(S_2,T),…,DIF(S_n,T)\}}的最大值,用空格隔开。

样例

输入样例

3 5
01001
11100
10111

输出样例

1 3

提示

只有当T=00010\red{T = 00010}时,min{DIF(S1,T),DIF(S2,T),,DIF(Sn,T)}\red{min\{DIF(S_1,T),DIF(S_2,T),…,DIF(S_n,T)\}}达到最大,为3\red{3}