(Je suppose par la suite que vous avez lu.) Comment vous y prendriez-vous ?
Je commencerais d'abord par supprimer toutes les cartes en double exemplaires (ou plus), puisqu'alors on peut se débrouiller pour que les deux numéros soient face visible. Avec les cartes restantes, je regarde quels numéros sont connectés entre eux. J'entends par connecté que si (1, 2) et (2, 3) existent, alors 1, 2 et 3 sont connectés entre eux, et on continue par transitivité. Je sépare les cartes restantes en plusieurs tas, où chaque tas contient des numéros connectés entre eux et entre eux uniquement.
Mais à partir de là, je ne vois pas comment me débrouiller pour obtenir le plus petit nombre non atteignible pour chaque tas. Si on représente un tas par l'ensemble { a1, a2, ..., aN } alors on obtient une matrice ( bIJ ) où bIJ = 0 si la carte (aI, aJ) n'existe pas, et 1 sinon. Et on est censé trouver le plus petit indice I tel qu'il n'y ait aucun 1 sur la Ième ligne ou sur la Ième colonne, une fois que l'on a fait notre choix.
Je ne vois pas comment faire ça simplement. Des idées ?
Ben la première carte a 4 sur une face et 3 sur l'autre. Donc en choisissant de mettre 4 face cachée, tu as 3 face visible. D'autres cartes te permettent de mettre 1 et 2 face visible donc le premier nombre non affiché vaut forcément au moins 4. Et dans ce cas il vaut 4.
Je crois que ce que eugchriss voulait dire, c'est que si on choisi de ne pas retourner la carte justement, on a 3 en face cachée, et 4 en face visible, et à ce moment là la plus petite valeur non visible devient 3 et plus 4.
Dans l'exemple juste avant, on a A = [1, 2, 4, 3] et B = [1, 3, 2, 3], c'est expliqué que la réponse devrait être 5 mais je ne comprends pas non plus pourquoi, puisque si on choisi de retourner la deuxième carte, on obtient la séquence [1, 3, 4, 3] et la plus petite valeur non affichée est donc 2 au lieu de 5... ou alors je n'ai pas compris le résultat que l'on doit essayer d'obtenir.
EDIT : Effectivement je viens de comprendre, je n'avais pas fait attention qu'il fallait maximiser ce nombre qui n'était pas visible, my bad
- Edité par MaxWelle 17 août 2019 à 16:51:15
Il y a 10 types de personnes : Ceux qui comprennent le binaire et ceux qui ne le comprennent pas.
Je précise que je ne demande pas de code complet, j'imagine que ça prendrait beaucoup de temps. Juste l'idée directrice qui permet de résoudre le problème avec une bonne performance si vous la connaissez !
Avant de poster un message, vérifiez la date du sujet dans lequel vous comptiez intervenir.
Si le dernier message sur le sujet date de plus de deux mois, mieux vaut ne pas répondre. En effet, le déterrage d'un sujet nuit au bon fonctionnement du forum, et l'informatique pouvant grandement changer en quelques mois il n'est donc que rarement pertinent de déterrer un vieux sujet.
Au lieu de déterrer un sujet il est préférable :
soit de contacter directement le membre voulu par messagerie privée en cliquant sur son pseudonyme pour accéder à sa page profil, puis sur le lien "Ecrire un message"
soit de créer un nouveau sujet décrivant votre propre contexte
ne pas répondre à un déterrage et le signaler à la modération
Eug