Enumération de matrices

Olympiades mathématiques, énigmes et défis
Sve@r

Enumération de matrices

par Sve@r » 13 Avr 2008, 11:55

Bonjour à tous - J'ai trouvé ce problème sur un fofo de programmation

Trouver le nombre de matrices carrées binaires (composées uniquement de 0 et 1) de taille "n" où la somme de chaque ligne et chaque colonne est égale à un nombre "k"

Exemple: nombre de matrices de tailles 3 où la somme de chaque ligne/colonne est égale à 2 => réponse 6
0 1 1
1 0 1
1 1 0

0 1 1
1 1 0
1 0 1

1 0 1
0 1 1
1 1 0

1 0 1
1 1 0
0 1 1

1 1 0
0 1 1
1 0 1

1 1 0
1 0 1
0 1 1

D'un point de vue programmation, j'ai résolu le problème. Je pars de
0 1 1
0 1 1
0 1 1
Puis j'incrémente chaque ligne de 1 en 1 et je m'arrête en final ici
1 1 0
1 1 0
1 1 0
En ayant compté entre les deux chaque matrice qui convient

Maintenant je m'y intéresse d'un point de vue mathématique (trouver la formule qui donne directement le bon résultat) et là je sèche. Je suis resté bloqué sur la première ligne où j'arrive à trouver que pour distribuer "k" jetons parmi "n" emplacement il y a comb(k, n) possibilités. Mais ensuite il faut placer les lignes suivantes...

Voici le fofo où j'ai trouvé le problème: http://www.developpez.net/forums/showthread.php?t=481611

Merci à tous :zen:



scelerat
Membre Relatif
Messages: 397
Enregistré le: 03 Aoû 2005, 13:37

par scelerat » 14 Avr 2008, 09:04

Bon, deja pour k=n, c'est 1. Pour k=n-1, c'est facile, il y a n lignes possibles et on ne peut pas mettre deux fois la meme, donc c'est n!, le nombre d'arrangements de ces lignes. C'est aussi la meme chose pour k et n-k, en echangeant les 1 et les 0.
Je continue a reflechir.

Sve@r

par Sve@r » 14 Avr 2008, 09:35

scelerat a écrit:Bon, deja pour k=n, c'est 1. Pour k=n-1, c'est facile, il y a n lignes possibles et on ne peut pas mettre deux fois la meme, donc c'est n!, le nombre d'arrangements de ces lignes. C'est aussi la meme chose pour k et n-k, en echangeant les 1 et les 0.
Je continue a reflechir.


Joli. J'étais même pas arrivé au fait que pour k=n - 1 la solution était n! mais effectivement, mon programme me donne ça.

Ainsi il faut partir sur des évaluations de "k" au cas par cas ???

Le fait que ce soit le même résultat pour "n - 1" et "n - k" (et aussi pour 0 et n) me font penser à un échelonnement qui pourrait ressembler au triangle de Pascal...

Bon, voici pour aider quelques valeurs trouvées

Pour n=5 les valeurs k=0, 1, 4 ou 5 sont connues. et pour k=2 ou 3 on a 2040 matrices

Pour n=6
k=2 ou k=4 => 67950
k=3 => 297200

Pour n=7
k=2 ou 5 => 3110940
k=3 ou 4 => 68938800

Pour n=8
k=2 ou 6 => 187530840 (c'est marrant, ce chiffre me dit quelque chose => je l'ai déjà vu ailleurs)
k=3 ou 5 => 24046189440
k=4 => 116963796250

scelerat
Membre Relatif
Messages: 397
Enregistré le: 03 Aoû 2005, 13:37

par scelerat » 16 Avr 2008, 09:04

Sve@r a écrit:Bon, voici pour aider quelques valeurs trouvées

Pour n=5 les valeurs k=0, 1, 4 ou 5 sont connues. et pour k=2 ou 3 on a 2040 matrices


Pour k=2, il me semble qu'on peut dire qu'on obtient toutes les matrices en faisant la somme de deux matrices k=1 n'ayant aucune ligne (ou colonne) identique. Quand on a choisi la premiere des deux, le nombre de choix pour l'autre est celui des derangements de la liste de ses lignes, soit .
On aurait donc n! puisque chaque matrice k=1 est comptee 2 fois, mais de tete j'arrivais a 2640. pour n=5, k=2

 

Retourner vers ⚔ Défis et énigmes

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 3 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite