Sur une grille à carreaux de m x n (m et n sont des nombres
entiers strictement positifs), on pose des colonnes à base
carrée. Ses vues de face et de profil ressemblent à des
graphiques à barres. On donne la hauteur des barres avec
les nombres u1, u2,...,um et v1, v2, ..., vn . Ecrire un
programme qui lit en entrée les nombres u1, u2,...,um et
v1, v2, ..., vn au format décrit dans l'exercice I. 100.
, puis calcule la matrice correspondant à l'un des objets
de volume minimal - ou il affiche qu'un tel objet n'existe
pas et il écrit les données en cause.
Cet exercice est l'inverse de l'exercice I.98. : dans celui-ci,
en partant de la matrice déterminant l'objet d'une manière
unique, on devait donner les vues de l'objet; cette fois-ci,
on part des vues et l'on doit déterminer l'objet de volume
minimal.
A envoyer un fichier TEXT (i103.txt) contenant la description
complète de l'algorithme ( 5 points ) et la justification
détaillée du fait que l'algorithme détermine toujours correctement
s'il existe un objet ayant les propriétés données et s'il
y en a, l'algorithme donne vraiment l'objet ayant les caractéristiques
souhaitées, (8 points), ainsi que le programme (4 points)
(i103.pas, ...).
(17 points)
I. 104. Expérimentons, réfléchissons !
Soit n un nombre entier strictement positif. Est-ce
qu'il existe n nombres entiers strictement positifs
dont la somme est égale à leur produit ?
Ecrire un programme (i104.pas, ...), qui donne la réponse
à cette question et, si la solution existe, donne tous les
groupes de n nombres, en ordre croissant des nombres.
A envoyer le programme (i104.pas, ...).
(10 points)
I. 105. A une exposition canine, les m chiens
concourants sont classés en n catégories : chaque
chien reçoit un certain nombre de points ( 0-10 points,
nombres entiers ) dans chaque catégorie, que le jury inscrit
tout de suite dans un tableur. Le président ( non-mathématicien
) du jury demande que le tableur affiche le nombre de catégorie
où le chien vainqueur absolu ( selon le total des points
obtenus ) a gagné.
A envoyer la feuille de calcul (i105.xls).
(10 points)
L' exercice
S
Date limite
d'envoi : 21 mai 2009.
S. 8. Ecrire un programme qui propose un pas dans
le jeu amoeba, sur un tableau de 15x15, en position quelconque.
Le programme doit lire la position du jeu à partir de l'entrée
standarde. Les champs vides, les pièces de la machine et
celles de l'adversaire sont désignées par les caractères
" . ", " O ", et " X ". Il doit écrire le pas proposé sur
la sortie standarde. Il doit marquer les lignes par les
lettres A, ..., O les colonnes par les nombres 1, ..., 15
. (Par exemple le neuvième champ de la troisième ligne est
désigné par C9.) Les solutions seront testées sur une machine
de 2GHz, le pas doit être affiché dans les 10 secondes.
Entre les programmes qui fonctionne, nous organiserons un
tournoi, le vainqueur obtiendra ( en cas de documentation
exhaustive ) 10 points, le deuxième 8 points, les autres
solutions pourront obtenir 7 points au maximum.
Attention ! On n'accepte que les programmes écrits
dans les langages mentionnés dans le règlement (Pascal,
C/C++, Java). Le programme ne doit pas dessiner, ni effacer
l'écran, ni écrire dans un fichier, ni lire un fichier et
en dehors de l'affichage du pas proposé, il ne doit rien
écrire d'autre.