Inscription / Connexion Nouveau Sujet
Niveau énigmes
Partager :

Décomposition judicieuse

Posté par
Vassillia
11-01-22 à 22:17

Bonjour à tous,

Retour aux questions où on peut tous répondre pour les premières valeurs de n mais où généraliser n'est pas si évident.

Pour tout entier positif n, qui sont l'entier positif k et la suite d'entiers positifs a_1<a_2<...<a_k qui vérifient n=\sum_{i=1}^k a_i et qui permettent de maximiser \prod_{i=1}^k a_i ?

Les plus courageux devront démontrer qu'ils ont raison

Posté par
ty59847
re : Décomposition judicieuse 11-01-22 à 23:20

euuuhhhh  

Posté par
Vassillia
re : Décomposition judicieuse 11-01-22 à 23:55

Mais, mais si, ne va pas me décourager les troupes tout de suite
Tout le monde peut vraiment répondre pour les premières valeurs de n (enfin à supposer qu'on connait les symboles somme et produit c'est vrai)

Ex : on cherche les décompositions pour n=3 sous forme d'addition avec des entiers positifs et strictement croissants, il y en a deux uniquement :
n=3 ce qui donne pour produit 3
n=1+2 ce qui donne pour produit 1\times2=2
Donc la première décomposition est celle qui maximise le produit et on vient de répondre pour n=3

A vous

Posté par
ty59847
re : Décomposition judicieuse 12-01-22 à 00:02

C'était pas un signe de découragement, c'était un indice

Posté par
flight
re : Décomposition judicieuse 12-01-22 à 00:57

Bonjour Vassilia

si j'ai bien compris le probleme pour par exemple n = 6
on peut former la somme 4+2 = 6   et le produit qui est maximal avec 4*2=8 ?  c'est bien ca ?

Posté par
flight
re : Décomposition judicieuse 12-01-22 à 01:00

l'idée serait donc de pouvoir ecrire toutes  les "partitions d'un entier"  et retenir celle qui maximise le produit

Posté par
Vassillia
re : Décomposition judicieuse 12-01-22 à 01:41

Et bien le moins que l'on puisse dire c'est que ton indice ne divulgache (spoil pour les anglophones) pas trop la question ty50847, même moi, je vois difficilement où tu veux en venir.

Voilà c'est ça flight, tu viens de résoudre le cas n=6.
Bien joué, il n'y a plus qu'à continuer...

Posté par
Vassillia
re : Décomposition judicieuse 12-01-22 à 01:42

Désolée faute de frappe dans ton pseudo ty59847

Posté par
ty59847
re : Décomposition judicieuse 12-01-22 à 09:03

Tu ne vois pas où je veux en venir ?

Je crois me souvenir de cet exercice, mais peut-être que je me trompe.  Et je n'ai fait aucun calcul pour vérifier, c'est juste un vieux souvenir.
Mais à l'époque, j'avais pensé à une suite pour cet exercice, alors je te la propose.

A partir d'un nombre d décimal, avec maximum 2 chiffres après la virgule  (exemple 23,45 ou 5,67  ou ...) trouver comment décomposer ce nombre en somme de plusieurs décimaux, également avec 2 chiffres après la virgule, de telle sorte que le produit de ces nombres soit maximum.

Pareil avec des nombres avec 3 chiffres après la virgule, ou plus ...

En fait, après réflexion, mon indice n'est intéressant que pour ces variantes, il est sans intérêt pour la version que tu proposes.

Posté par
mathafou Moderateur
re : Décomposition judicieuse 12-01-22 à 09:09

Bonjour,

on notera que la condition d'inégalité stricte sur les ai
définit une partition en sommants inégaux

pour un n donné, le nombre q(n) de telles partitions à examiner est donné pae la suite A000009 de l'OEIS (encyclopedie des suites)
à partir de n = 0 :
1, 1, 1, 2, 2, 3, 4, 5, 6, 8, 10, 12, 15, 18, 22, 27, 32, 38, 46, 54, 64, 76, 89, 104, 122, 142, 165, 192, 222, etc

ainsi q(6) = 4 :
6 = 6
6 = 5+1
6 = 4+2
6 = 3+2+1
la "meilleure" au sens de l'exo est bien 4+2
mais il fallait examiner les autres pour en être sur

pour n = 7, q(n) = 5
7
6+1
5+2
4+3
4+2+1
la meilleure étant 4+3 avec 4*3 = 12

aller plus loin ainsi (hors théorie) va nécessiter d'avoir un programme qui engendre les partions en sommants inégaux d'un entier

on trouve facilement (tout fait) un programme qui génère les partitions (tout court) d'un entier
donc avec n=6 :
6 = 6
6 = 5+1
6 = 4+2
6 = 4+1+1
6 = 3+3
etc (11 partitions au lieu de 4)
le maximum étant cette fois avec 6 = 3+3 qui donne le produit 3*3 = 9

modifier ce programme tout fait pour qu'il ne garder que celles en sommants inégaux semble une perte d'efficacité.
mais bon ...
cela donne pour n = 12 :
[1, 2, 3, 6], produit = 36
[1, 2, 4, 5], produit = 40
[1, 2, 9], produit = 18
[1, 3, 8], produit = 24
[1, 4, 7], produit = 28
[1, 5, 6], produit = 30
[1, 11], produit = 11
[2, 3, 7], produit = 42
[2, 4, 6], produit = 48
[2, 10], produit = 20
[3, 4, 5], produit = 60 ****
[3, 9], produit = 27
[4, 8], produit = 32
[5, 7], produit = 35
[12] produit = 12
(q(12) = 15 comme il se doit cf OEIS)

le maximum est donc 3*4*5 = 60

on commence à voir se dégager une règle pour éliminer d'office certaines partitions "inintéressantes"

Posté par
ty59847
re : Décomposition judicieuse 12-01-22 à 09:14

Ohh, je viens de relire la décomposition proposée pour 6, et je vois qu'on veut une série de nombre tous différents 2 à 2 ...
J'ai tout faux. L'exercice auquel je pensais permettait d'utiliser plein de fois le même nombre si utile.

Posté par
flight
re : Décomposition judicieuse 12-01-22 à 12:25

Il est précisé que a1<a2<a3<....

Posté par
flight
re : Décomposition judicieuse 12-01-22 à 12:26

Moyennant un programme.. Sinon. je ne vois pas comment faire autrement 😊😊😊

Posté par
Vassillia
re : Décomposition judicieuse 12-01-22 à 12:45

Très bonne idée de faire un programme comme mathafou pour trouver la meilleure décomposition mais ensuite le but est de donner une réponse explicite pour tout n.

Même nos spécialistes en programmation de ce forum (et d'ailleurs) vont finir par être bien embêtés si n devient trop grand.

Posté par
ty59847
re : Décomposition judicieuse 12-01-22 à 13:21

A partir d'un entier n, je commence par chercher quel est l'entier i tel que  2+3+4+5+ .. +i \le n < 2+3+4+5+ .. +i +(i+1)
Cet entier est  i= PartieEntière( racine(2n) -1 )  ... ou quelque chose du genre.
Ensuite , partant de ce nombre i, j'ai 2 cas.
Soit la somme 2+3+4+5+...+i donne exactement n, et c'est fini.
Soit la somme 2+3+4+5+...+i donne un nombre strictement inférieur à n.
Dans ce cas, je calcule D = 2+3+4+5+...+i  + (i+1) - n
Et la solution est la liste (2,3,4, 5 ... i, i+1 ),   en excluant de cette liste le nombre D.

Exemple pour 10000, la solution est la somme de tous les nombres de 2 à 141, en excluant le nombre 10.

Posté par
Vassillia
re : Décomposition judicieuse 12-01-22 à 13:42

Tu n'es pas loin du tout ty59847 c'est presque ça mais tu vas avoir un problème si n=\dfrac{(i+1)(i+2)}{2} - 2 , essayons pour n=8

2+3 \leq 8 < 2+3+4
Donc je calcule D=2+3+4-8=1
Arf catastrophe, je ne peux pas enlever 1 qui n'est pas dans la liste

PS : il restera éventuellement à faire la démonstration que c'est bien ta décomposition qui donne le max

Posté par
ty59847
re : Décomposition judicieuse 12-01-22 à 14:25

Bien vu. Dans ce cas, ce n'est pas (i+1) qu'on va choisir comme plus grand terme, mais (i+2) ; et on retire donc le 2.

Une démonstration.
-Lemme 1-
Le nombre 1 est un poids mort ; toute série qui contiendrait le nombre 1 est forcément optimisable, en remplaçant par exemple le couple (1, i_k) par i_k+1  où i_k est le plus grand terme de la liste, et donc on a l'assurance de ne pas générer de doublon en insérant i_k+1

-Lemme 2-
On a toujours intérêt à remplacer un nombre p par le couple (q, p-q) avec 2 \le q <p-q < p

-Lemme 3-
Si a<b<c<d et ad=bc, on a toujours intérêt à remplacer (a,d) par (b,c)

Avec tous ces résultats intermédiaires , on sait quoi ...
On veut avoir le plus de nombres possibles dans notre liste, et donc des nombres le plus petit possible (hormis 1)

Faudrait formaliser tout ça, mais on a toutes les pièces du puzzle.

On peut jouer ensuite en se posant quelques questions.
Décomp(4)=(4) ; prod(4)=4
Decomp(5)=(2,3) ; prod(5)=6
Decomp(6)=(2,4)  : prod (6)=2*4=8
Decomp(7) = (3,4) ; prod(7)=12
Decomp(8) = (3,5) : prod(8)= 15
Decomp(9) = (2,3,4) ; prod(9)=24
Decomp(10)=(2,3,5) ; prod(10)=30
Decomp(11)=(2,4,5) ; prod(11)=40
Decomp(12)=(3,4,5) ; prod(11)=60
Decomp(13)=(3,4,6) ; prod(11)=72
Decomp(14)=(2,3,4,5) ; prod(11)=120

etc..
Je n'ai jamais été très doué pour chercher sur le site de l'OEIS ; on s'attend à y trouver cette suite, mais je ne la vois pas.

La courbe obtenue, elle est grossièrement de type exponentiel. Elle est croissante : même s'il y a des irrégularités, on peut montrer qu'elle est croissante.

Quand on passe de 5 à 7 ou de 7 à 9 ... on fait des multiplications par 2, mais ensuite, ça se tasse, quand on passe de 9 à 11 ou de 11 à 13, ça ralentit.

Peut-on trouver un équivalent , un encadrement, pour n très grand  ?

On a des points qui marchent bien (ici on voit que pour n=9, le résultat 24 est une très belle performance). Les points qui marchent bien, ce sont les points (2+3+4,   2+3+4+5,   2+3+4+5+6 , etc)
Les images de ces points , ce sont tous les i!

Mais les autres, ceux qui sont vraiment en-dessous du nuage de points, comment les caractériser ... il y a de quoi s'amuser avec cette suite.

Posté par
dpi
re : Décomposition judicieuse 12-01-22 à 16:46

>Vassillia

Je ne suis pas familiarisé avec....

Citation :
enfin à supposer qu'on connait les symboles somme et produit c'est vrai)

En regardant les réponses ,je pense que j'ai compris.
Par exemple pour 15
somme  
3+5+7  et produit 105

Posté par
Vassillia
re : Décomposition judicieuse 12-01-22 à 16:57

Oui c'est ça dpi sauf que tu dois trouver la décomposition qui permet de maximiser le produit et pour 15 on peut faire mieux, à toi de trouver comment.

A ce stade, on peut dire que ty59847 a donné largement plus qu'un indice, il y a tous les éléments y compris pour la démo.
La suite OEIS

Posté par
dpi
re : Décomposition judicieuse 12-01-22 à 17:05

avec

2+3+4+6 =15---produit 144

Posté par
ty59847
re : Décomposition judicieuse 12-01-22 à 17:22

Je me doutais bien que l'OEIS donnerait cette suite, mais ça m'énerve, je suis totalement incapable de trouver quoi que ce soit sur ce site quand j'essaie.
Pour 10000, j'avais fait le calcul avec Excel, et j'avais bien  189814375907617 , mais avec plein de 0 derrière. Pas si mal quand même.

dpi

Pour 15.
2+3+4+5, ça donne 14, plus petit que 14.
J'arrive à décomposer 14 en somme de 4 entiers différents, en excluant 1.
Donc, pour les nombres plus grands que 14, c'est sûr, on va trouver une partition avec une somme de 4 entiers, distincts 2 à 2, et tous plus grands que 1. Et notre gâteau, si on le coupe en 4 parts plutôt qu'en 3, on a la certitude que ce sera mieux. Plus on a de parts, mieux c'est.
Le premier objectif, c'est de faire beaucoup de petites parts, plutôt que quelques grosses parts.
15, c'est 2+3+4+6.
Et c'est ce découpage là qui donne le meilleur score 2x3x4x6=144.
C'est d'ailleurs la seule façon de découper 15 en 4 nombres distincts, différents de 1.

16, on peut le décomposer en 2+3+4+7, mais il y a un peu mieux, 2+3+5+6 donne le meilleur résultat.
Ce sont les 2 seules façons de découper 16 en somme de 4 entiers distincts, différents de 1.

Posté par
dpi
re : Décomposition judicieuse 12-01-22 à 18:00

J'ai testé de 15 à 20

 Cliquez pour afficher

Posté par
ty59847
re : Décomposition judicieuse 12-01-22 à 18:57

 Cliquez pour afficher

Posté par
dpi
re : Décomposition judicieuse 13-01-22 à 09:55

Merci
J'ai revu mon tableur.

 Cliquez pour afficher

Posté par
dpi
re : Décomposition judicieuse 13-01-22 à 10:57

On voit que le nombre de termes et donc de facteurs augmente
par exemple pour n=35
on a  2 +3+4+5+6+7+8--->p(35) 40320

Posté par
ty59847
re : Décomposition judicieuse 13-01-22 à 13:18

Dpi, le lien donné par Vassilia donne les résultats pour les 10000 premiers entiers , ici :

Posté par
dpi
re : Décomposition judicieuse 13-01-22 à 14:49

Merci,

J'étais allé jusqu'à 40
mais au moins ,j'ai la décomposition
A noter que 3 au début permet la bonne valeur dans quelques cas.

 Cliquez pour afficher

Posté par
Vassillia
re : Décomposition judicieuse 13-01-22 à 14:54

Et oui, tu as trouvé comment décomposer judicieusement, bien joué dpi !

Posté par
ty59847
re : Décomposition judicieuse 13-01-22 à 15:51

Il y a les nombres que je vais appeler les nombres 'triangulaires'...
Ce sont les nombres 14, 20, 27, 35 ...
Ce sont les premiers nombres de chaque 'taille'

14 = 2+3+4+5
20 = 2+3+4+5+6
27 = 2+3+4+5+6+7
35 = 2+3+4+5+6+7+8
etc
Je les appelle 'triangulaires', c'est quasiment la même série que les nombres triangulaires classiques. Avec juste une unité de décalage.
Et systématiquement, les 2 nombres qui précèdent ces nombres triangulaires se décomposent sans le nombre 2 (33 et 34 par exemple, on n'utilise pas le 2)
Et ce sont les seuls dans ce cas.

On a donc une logique assez facile à lire sur le tableau :
- quelques nombres quelconques.
- 2 nombres dont la décomposition ne comporte pas de 2
- un nombre triangulaire
Et on repart sur quelques nombres quelconques ...

Et quand je dis quelques nombres quelconques, on peut préciser un peu, le nombre de lignes est connu : c'est 5 lignes de 28 à 32 , 6 lignes de 36 à 41, puis 7 lignes , puis 8 lignes etc etc indéfiniment.

Posté par
dpi
re : Décomposition judicieuse 14-01-22 à 08:22

>ty59847
Ta théorie des nombres triangulaires permet d'anticiper quelques
résolutions .
En effet on progresse de raison c+1  pour les chiffres et de raison  n+c+1 pour les nombres,je m'explique :
n=14   2345
n=20    23456             20-14=6
n=27    234567          27-20=7
n=35    2345678        35-27=8
c'est  évident  par construction...
donc:
n=44   n=54  n= 65  n= 77 n= 90 sont triangulaires
et on peut donc facilement trouver leur successeur.

exemple  : n 90 =  2+3+4+5+6+7+8+9+10+11+12+13
avec p(90) =6 227 020 800
n91                      il suffit de remplacer 13 par 14
donc p(91) = 6  706 022 400

Posté par
ty59847
re : Décomposition judicieuse 14-01-22 à 09:02

Tout à fait.
Ca, et la suite de l'algorithme, c'était dans mon message de mercredi, 13h21.
A corriger avec le message de Vassilia 20 minutes plus tard.

Posté par
ty59847
re : Décomposition judicieuse 17-01-22 à 20:42

Vassilia   !  ouh ouh , tu m'entends ?
L'indice que je donnais ici, il était hors sujet.
Mais dans la variante que j'ai postée   Décomposition Judicieuse n°2, il est utilisé ... et il va bientôt sortir du bois.

Posté par
Vassillia
re : Décomposition judicieuse 17-01-22 à 21:06

Désolée ty59847, j'ai suivi les énigmes de loin depuis ce week-end à cause d'activités IRL mais tu es bon en teasing, j'ai hâte de voir ça !!!



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !