var shards1 = Enumerable.Range(1, 3).Select(x => x.ToString()).ToArray();
var shards2 = Enumerable.Range(1, 4).Select(x => x.ToString()).ToArray();
int Randevue(string id, string[] shardNums)
return shardNums.Select(x => (id + x).GetHashCode() % shardNums.Length).Max();
for (int i = 1; i < 100; i++)
var r1 = Randevue(i.ToString(), shards1);
var r2 = Randevue(i.ToString(), shards2);
Console.WriteLine($"{r1}, {r2}");
Console.Write($"diff:{diff}");