2020, année mathémagique - Une solution
Les entiers naturels p et q (non nul) étant donnés, il est rapide de vérifier que, si la roue R est magique, alors la figure R′=p+qR (où chaque entier N de R est associé à l’entier N′=p+qN de R′) est aussi magique.
Il « suffit » donc de trouver deux entiers p et q (non nuls) qui répondent au problème.
La nature affine de l’expression p+qN fait penser à une suite arithmétique !
Ainsi, une piste est de trouver une suite arithmétique (Un) telle que
Ua+Ub+Uc=2020, où les trois indices a, b et c sont justement les
trois nombres de chaque alignement. Autrement dit, ils vérifient l’égalité
a+b+c=19.
En définissant de façon usuelle le terme général Un par Un=U0+rn
(ce qui explique au passage le choix de commencer la liste des entiers à 0
et non pas à 1), il vient :
Ua+Ub+Uc=U0+ra+U0+rb+U0+rc=3U0+(a+b+c)r=3U0+19r
Or Ua+Ub+Uc=2020.
Donc 3U0+19r=2020, ce qui équivaut à
U0=(2020–19r)÷3.
Puisque U0 est entier et positif, une méthode consiste à tester, pour chacun des
entiers r allant de 1 au quotient entier de 2020 par 19 augmenté de 1,
si U0 est entier et d’afficher alors le couple (U0,r).
Les deux entiers p et q cherchés seront alors p=U0 et q=r.
On va écrire en langage Python un programme qui permette d’obtenir des couples
(U0,r) solutions que la variable t permet de dénombrer.
Rappel : Le quotient entier est obtenu grâce à la contre-oblique
//
:

L’exécution de ce programme donne trente-six couples solutions (ce qui, au passage, permet d’offrir à chacun des élèves d’une classe une roue différente !) :

Prenons, par exemple, le vingt-septième couple proposé, (173, 79).
Chaque entier N de la première roue va donner l’entier N′=173+79N de
la seconde roue. Ainsi, à 4 est associé 173+79×4=489 et à 9 est
associé 173+79×9=884.
On complète le programme précédent par une fonction roue
, de paramètres
p et q, qui renvoie les dix-neuf valeurs demandées :

Évidemment, l’exécution de roue(0, 1) donne la roue initiale !
L’exécution de roue(173, 79) donne les dix-neuf valeurs qui construisent la roue suivante :

De même, l’exécution de roue(420, 40) donne celles qui construisent la roue suivante ::
