ca n'est ni 105 ni 108 en tout ca ca c'est sur il y a quelque-chose qui va pas dans votre methode ca serais interessant de voir quoi...
et je crois pouvoir dire avec certitude que la vrai reponse est 40
Le programme ne c'est encore jamais trompé... et j'ai encore une fois reconté par moi-meme.
En effet, phloam, il semble il y avoir un problème. Je n'ai pas tenu compte du fait que chaque triangle est aussi compté deux fois, puisque ce sont des graphes non orientés.
Si l'on prend l'exemple simple d'un triplet, alors on sait très bien qu'il n'y a qu'un seul triangle.
Avec le raisonnement précédemment tenu, la matrice associée à un tel graphe serait :
On aurait alors triangles !!!
(le "", c'est pour le comptage des triangles plats)
En tenant compte du sens, on retrouverait bien .
Je vais regarder ça de plus près.
Je suis vraiment c** ! Dans le premier exemple que j'avais traité, je l'avais pourtant fait : la trace était de 204, que j'ai tout de suite divisée par 2, puisque que j'avais, déjà, tenu compte du double sens, soit 204/2=102 !!
Salut N_comme_Nul,
en redivisant la trace par 2 et en enlevant les triangles plats, on obtient bien 40 triangles...
On y arrive finalement .
Oui cinnamon, donc mon raisonnement tient alors la route
Effectivement N_comme_Nul...
N'empêche, je me demande toujours comment phloam a fait et si sa méthode est un peu moins longue....
phloam a donc soulevé le problème du petit (immense, gigantesque, impardonnable, ... ) oubli du fait de diviser par deux (erreur que je n'avais pas commise au début) ... ce qui justifie, une fois de plus, mon pseudo
Merci phloam !
On est maintenant tous d'accord !
cinnamon : certainement par la construction et le parcours d'arbres et de leurs parcours ...
Très drôle N_N.
Après ta démo, Ta toute première démo du topic, t'auras encore bcp de mal à nous prover que ton pseudo est fondé.
Tout d'abord bravo a N_comme_Nul pour ta solution mathematique
Ma solution personnel (celle du programme n'ast pas vraiment mathemathique)
En fait le programme commence par stocker les points colineaires dans un tableau double(le premier indice corespond a la ligne et le deuxieme a un point) .A partir de ces donné le programme peut dresser un tableau de points adjacents (ou le premier indice est le point et le deuxieme le point auquel il est adjacent.)
Ensuite comme le N_comme_Nul:"certainement par la construction et le parcours d'arbres et de leurs parcours "
Je parcours le tableau des points adjacents et je recherche toutes les combinaisons de points adjacents et si ils ne sont pas colineaires j'incremente le nombre de triangles.
Voila je sais que c'est pas tres clair mais bon... en gros je verifie que chaque combinaison de 3 points differents a des points
adjacents et non colineaire.
Pour les quadrilateres c'est une autre paire de manche...(suis obligé d'utiliser les coordonnés de chaque points)
public int findTri(int[][] colinear,int[][] adjacent) {
int count = 0;
for (int i = 0; i < adjacent.length; i++)
for (int j = i+1; j < adjacent.length; j++) {
if (Arrays.binarySearch(adjacent, j) < 0) continue;
for (int k = j + 1; k < adjacent.length; k++) {
if (Arrays.binarySearch(adjacent[i], k) < 0) continue;
if (Arrays.binarySearch(adjacent[j], k) < 0) continue;
boolean trouve = false;
for (int l = 0; l < colinear.length; l++)
if (Arrays.binarySearch(colinear[l], i) >= 0 &&
Arrays.binarySearch(colinear[l], j) >= 0 &&
Arrays.binarySearch(colinear[l], k) >= 0) {
trouve = true;
break;
}
triangles += (trouve? 0 : 1);
}
}
return triangles;
}
[/i]
***edit jerome : erreur de balise corrigée***
Ok merci phloam
Je préfère quand même la méthode de N_comme_Nul car elle est plus à ma portée...
Vive les maths sur l' !
Une balise italique est restée ouverte, svp
merci aux modos
Philoux
En regardant le code source de la page, on voit que c'est à cause d'une balise <i> ouverte dans le code source de phloam et non fermée
mais pouratant il manque tous les indexs dans le programme que j'ai filé, c'etait pas si con lol
adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i] adjacent[/i]
je me demande si tout les messages suivants seront surlignés?
***edit jerome : Merci à l'avenir d'éviter ce genre de test avec les balises***
C'est un bogue que les webmasters devraient corriger je pense.
A la fin de chaque topic, fermer toutes les balises ouvertes ...
es qu'on peut changer la couleur du texte sur ce forum genre blanc sur blanc?
Bon donc maintenant on sait compter le nombre de triangles dans une figure geometrique , mais a quoi ca sert vraiment. Moi je l'ai fait a la base pour repondre a des questions sur un jeux telé ou il y avait ce genre de questions et de l'argent a gagné. maintenant le jeu est fini et je me demande bien a quoi peut servir ce programme. Ca me fait du mal de penser que c'est inutile...
phloam : tant pis si ça ne sert à rien ... mais en tout cas, ce qui est intéressant c'est que l'on est parti d'un problème, plusieurs personnes s'y sont penchées dessus et on a finalement trouvé une solution
C'est comme pour les théorèmes en Mathématiques ... le résultat en lui-même est peut-être joli, mais le plus beau, c'est le raisonnement qui a permis de le démontrer et surtout les efforts qui ont été déployés pour parvenir à la solution.
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :