Dúvida de lógica + cálculo

Pessoal,
Imagine a seguinte situação:
1 - Possuo 5 pessoas que podem pedir músicas;
2 - Cada pessoa pode pedir a quantidade de músicas que desejar;
3 - As cinco pessoas são identificadas como: a, b, c, d, e.

As pessoas fizeram seus pedidos na seguinte ordem:
1a: a = 10 músicas;
2a: b = 7 músicas;
3a: c = 3 músicas;
4a: d = 1 música;
5a: e = 1 música.

Total = 22 músicas pedidas.

Vou tocar essas músicas.
A pessoa “e” não pode esperar tocar todas as músicas da pessoa “a”, pois vai demorar muito até chegar a sua vez.
A pessoa “d” também não vai querer esperar as 10 músicas da pessoa a, tampouco vai querer esperar a execução das 7 da pessoa b e 3 músicas da pessoa c.

Preciso encontrar um cálculo que faça uma lista de execução de músicas para tocar todas de acordo com seu peso (quantidade).
Gostaria que funcionasse mais ou menos assim:
1 - Tocar 3 músicas da pessoa “a”;
2 - Tocar 2 músicas da pessoa “b”;
3 - Tocar 1 da pessoa “c”;
4 - Volta a tocar 1 da pessoa “a”;
5 - Toca a música da pessoa “d”;
6 - Volta a tocar 1 música da pessoa “b”;
7 - Toca a música da pessoa “e”;

Atendeu os pedidos das pessoas “d” e “e”, agora a concorrência fica entre a, b, c.

Alguém teria alguma idéia de como calcular isso?

achei bem interessante e peguei o desafio

veja na planilha anexada a minha solução

Cara,
Show de bola. Ficou muito bem elaborado.
Eu estava no quase! Quase que consegui, mas com esta ajuda consegui concluir.

Muito obrigado!