local t = io.read("*n") local function dotask() local n = io.read("*n") local l = {} for i = 1, n do local tmp = io.read("*n") if(l[tmp] == nil) then l[tmp] = 1 else l[tmp] = l[tmp] + 1 end end local mcnt = 0 for k, v in pairs(l) do mcnt = math.max(mcnt, v) end local c = {} for i = 1, mcnt do c[i] = 0 end local remall = 0 for k, v in pairs(l) do c[v] = c[v] + 1 remall = remall + 1 end local ret = 0 while(3 <= remall) do ret = ret + 1 for i = 1, 3 do c[mcnt] = c[mcnt] - 1 if(c[mcnt] == 0) then mcnt = mcnt - 1 end if(1 < mcnt) then c[mcnt - 1] = c[mcnt - 1] + 1 else remall = remall - 1 end end end return ret end for i = 1, t do print(dotask()) end