using System.Collections.Generic;
public static void Main()
var clientes = new List<string>
var Tecnicos = new List<string>
var distribuicao = Tecnicos.Distribuir(clientes);
foreach (var entrada in distribuicao)
Console.WriteLine(entrada.Key);
foreach (var itens in entrada.Value)
Console.WriteLine($" {itens}");
public static class Extensoes {
public static Dictionary<TU, List<T>> Distribuir<T, TU>(this IEnumerable<TU> membros, IEnumerable<T> itens)
var eItens = itens.ToList();
var eMembros = membros.ToList();
var mapaDeDistribuicao = eMembros.ToDictionary(i => i, i => new List<T>());
var numeroDeMembros = eMembros.Count;
var indiceDeContainer = 0;
foreach (var item in eItens)
mapaDeDistribuicao[eMembros[indiceDeContainer]].Add(item);
indiceDeContainer = (indiceDeContainer + 1) % numeroDeMembros;
return mapaDeDistribuicao;