C sharp - Cómo formar grupos?

 
Vista:

Cómo formar grupos?

Publicado por Patricia (16 intervenciones) el 01/12/2004 23:52:42
Hola a todos, a ver si me podéis echar una manilla con esto...

Tengo un conjunto de M puntos, y tengo que hacer grupos con ellos. Cada grupo va a tener N-M puntos. En total (aplicando úna fórmula combinatoria -M sobre N-) se formarán G grupos.

Sé cuántos grupos se me formarán, pero no sé cómo formar cada uno de esos grupos, es decir: cómo poner los (N-M) puntos en cada grupo.

Os pongo un ejemplo:

Sea N= 1. Tengo M=10 puntos en total. Quiero que cada grupo tenga M-N=10-1=9 puntos. Aplico combinatoria y sé que se formarán (10 sobre 1) = 10 grupos.

Llamamos a los puntos: (1,2,3, ..., 9,10)

Sé que los grupos que se forman son:

G1 = (1,2,3,4,5,6,7,8,9)
G2 = (1,2,3,4,5,6,7,8,10)
G3 = (1,2,3,4,5,6,7,10,9)
G4 = (1,2,3,4,5,6,10,8,9)
G5 = (1,2,3,4,5,10,7,8,9)
G6 = (1,2,3,4,10,6,7,8,9)
G7 = (1,2,3,10,5,6,7,8,9)
G8 = (1,2,10,4,5,6,7,8,9)
G9 = (1,10,3,4,5,6,7,8,9)
G10 = (10,2,3,4,5,6,7,8,9)

Ahora: ¿cómo sería el código que me permitiera crear esos grupos Gi, para el caso general con M y N como datos? (aparte de los puntos, claro)

Os agradecería mucho que me echáseis una manos, porque no doy con la solución.

Gracias.

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder