Question pour un (méga) champion [2]

Question pour un (méga) champion [2] - Algo - Programmation

Marsh Posté le 04-03-2004 à 16:46:31    

Soit un programmeur fou.
Comment fera-t-il pour implémenter un algo permettant de calculer n'importe quel nombre premier directement par son index (n) avec la restriction suivante sur la complexité de l'algo :
O(n)=O(n-1)=...=O(1)=1
 
astuce 1: c'est faisable
astuce 2: pas de solution type pré-calculation des nombres premiers
 

Reply

Marsh Posté le 04-03-2004 à 16:46:31   

Reply

Marsh Posté le 04-03-2004 à 16:49:33    

en fait tu veux qu'on résolve tes TP :o


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 04-03-2004 à 16:51:15    

je demande le ban pour :
1) mutli suspecté
2) pourrisage de sujet
3) 2 sujets, 2 titres à la con
4) demande de résolution d'exercice

Reply

Marsh Posté le 04-03-2004 à 16:55:06    

Taz a écrit :

je demande le ban pour :
1) mutli suspecté
2) pourrisage de sujet
3) 2 sujets, 2 titres à la con
4) demande de résolution d'exercice


 
Bein voyons. T'es assez idiot pour croire que je demande à ce que l'on résolve mes exercices ?
 
Et t'as déjà vu un exercice où l'on te demande de trouver un algo ayant une complexité de 1 pour trouver des nombres premiers directement par index ?
 
Moi non. Mais c'est vrai que je ne suis jamais allé à l'école...

Reply

Marsh Posté le 04-03-2004 à 16:55:15    

Citation :

Passion(s) : le sexe, le sexe et encore le sexe  
Métier / Occupations : euuhhhh ? sexe !  


 
[:rofl] [:rofl]


---------------
NP :
Reply

Marsh Posté le 04-03-2004 à 16:55:28    

+1


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 04-03-2004 à 16:56:55    

walli a écrit :

Citation :

Passion(s) : le sexe, le sexe et encore le sexe  
Métier / Occupations : euuhhhh ? sexe !  


 
[:rofl] [:rofl]  


 
Ouaip ! Je suis maquereau...
 
Mais bon, le sujet n'est pas mon activité sexuelle mais un problème d'algo qui ne me semble pas à la portée du premier venu.

Reply

Marsh Posté le 04-03-2004 à 16:59:26    

peu importe le niveau de l'exercice. c'est de la demande de résolution c'est tout


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 04-03-2004 à 17:02:10    

JagStang a écrit :

peu importe le niveau de l'exercice. c'est de la demande de résolution c'est tout


 
Et tu as pensé que la solution, je l'ai déjà ?
Et tu as aussi pensé que je pose un exercice particulièrement ardu, un peu comme on jette un défi ?
 
Enfin, de ce que vous donnez à voir, je pense que vous n'êtes pas très beaux joueurs pour l'instant...

Reply

Marsh Posté le 04-03-2004 à 17:04:19    

DocMaboul a écrit :


 
Et tu as pensé que la solution, je l'ai déjà ?
Et tu as aussi pensé que je pose un exercice particulièrement ardu, un peu comme on jette un défi ?

étant donné que c'est ta première journée ici, on a un doute raisonnable

Reply

Marsh Posté le 04-03-2004 à 17:04:19   

Reply

Marsh Posté le 04-03-2004 à 17:05:09    

1) j'espère que tu as la solution
2) les défis sont bienvenus ici. mais dans un but d'améliorer les compétences de chacun
3) désolé pas envie de jouer avec les inconnus arrivistes de ton genre


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 04-03-2004 à 17:08:49    

je comprends pas ça "O(n)=O(n-1)=...=O(1)=1 "
et encore moins les ...

Reply

Marsh Posté le 04-03-2004 à 17:10:50    

serais-ce de la récurrence ?


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 04-03-2004 à 17:11:34    

tu as raison Taz : O(n) != O(n-1) != O(n-2) ...


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 04-03-2004 à 17:11:58    

Taz a écrit :

je comprends pas ça "O(n)=O(n-1)=...=O(1)=1 "
et encore moins les ...


 
O est le nom qu'on donne en général à la fonction de complexité d'un algo. O(n)=O(n-1), ça veut dire, par exemple, que tu as autant de calculs à faire dans ton algo pour trouver 2 ou 3. Ici, n est l'index du nombre premier à trouver, les ... sont là pour dire que quelque soit i <= n, O(i)=1
 
Est-ce plus clair ?


Message édité par docmaboul le 04-03-2004 à 17:13:13
Reply

Marsh Posté le 04-03-2004 à 17:12:17    

Taz a écrit :

je comprends pas ça "O(n)=O(n-1)=...=O(1)=1 "
et encore moins les ...


c'est quoi un nombre premier ? :whistle:

Reply

Marsh Posté le 04-03-2004 à 17:12:29    

JagStang a écrit :

serais-ce de la récurrence ?


 
non.

Reply

Marsh Posté le 04-03-2004 à 17:13:00    

ok c'est plus clair


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 04-03-2004 à 17:14:34    

non, tu mélanges tout tes n, t'as pas compris (donc tes compétences, je les mets en doute, CQFD)
 
O(n) ~= O(n-1)
 
mais certainement pas O(n) = O(1)
 
c'est toi qui comprends rien
 
ce que t'es entrain de nous demander c'est de trouver un algo en O(1) c'est à dire à complexité constante.

Reply

Marsh Posté le 04-03-2004 à 17:15:03    

en gros tout ça pour dire que tu veux pas de fonction itérative ni récursive...
 
et qu'il existe donc une formule matématique du style:
f(indice)=nombre premier...
 

Reply

Marsh Posté le 04-03-2004 à 17:17:04    

maintenant dans 2, 3, 5, 7, 11, 13, 17, 19,
 
2 est le nombre premier d'indice 1
3 => indice 2
5 => indice 3
 
ou tu parts en 0 ?

Reply

Marsh Posté le 04-03-2004 à 17:17:31    

Taz a écrit :


ce que t'es entrain de nous demander c'est de trouver un algo en O(1) c'est à dire à complexité constante.


 
C'est bien tu comprends vite. Mais faut quand même que tu t'expliques longtemps.

Reply

Marsh Posté le 04-03-2004 à 17:18:06    

bjone a écrit :

en gros tout ça pour dire que tu veux pas de fonction itérative ni récursive...
 
et qu'il existe donc une formule matématique du style:
f(indice)=nombre premier...
 


 
Enfin, un peu d'intelligence sur ce fil...

Reply

Marsh Posté le 04-03-2004 à 17:19:06    

bjone a écrit :

en gros tout ça pour dire que tu veux pas de fonction itérative ni récursive...
 
et qu'il existe donc une formule matématique du style:
f(indice)=nombre premier...


me souvient d'un programme en BASIC quand j'étais tout petit (style 8/9 ans) que j'avais vu une fonction methématique qui faisait ça. Mais elle ne marchait que jusqu'à un certain index. Au délà, elle décallait les résultats.
 
par contre, me demandez pas de vous la poster, m'en souvient plus moi, déjà y'a la moitié des notions mathématiques dedans que je connaissait pas (notamment une racine, à 8/9 ans, tu sais pas des masses ce que c'est :D), et en plus c'était y'a plus de 10 ans :D

Reply

Marsh Posté le 04-03-2004 à 17:19:27    

DocMaboul a écrit :


 
C'est bien tu comprends vite. Mais faut quand même que tu t'expliques longtemps.

ben écoute, c'est quand même pas moi qui est écrit
 
O(n) = O(1) = 1 ...

Reply

Marsh Posté le 04-03-2004 à 17:20:32    

Taz a écrit :

non, tu mélanges tout tes n, t'as pas compris (donc tes compétences, je les mets en doute, CQFD)
 
O(n) ~= O(n-1)
 
mais certainement pas O(n) = O(1)
 
c'est toi qui comprends rien
 


 
Je ne me souviens plus, si dans O(n) n désigne la complexité ou le rang. De toute façon, ce n'est pas ça l'important mais que la complexité soit égale quelque soit le n fixé au départ et pour tous les rangs inférieurs.

Reply

Marsh Posté le 04-03-2004 à 17:21:54    

si c'est important. t'es un mariole et tu nous les brises
 
 
et encore heureux que ta complexité de ton algo ne varie pas ...

Reply

Marsh Posté le 04-03-2004 à 17:22:08    

si une telle formule existait, ça se saurait... je crois que tu rêves


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 04-03-2004 à 17:22:49    

Taz a écrit :

ben écoute, c'est quand même pas moi qui est écrit
 
O(n) = O(1) = 1 ...


 
D'accord, si tu veux O(n) = ... = O(1) = peau_de_zob_constante.
 
Errare humanum est (et je ne me souviens plus s'il y un r ou deux rr à humanum ;-).
 
Tu te souviens de la blague des fous et du sel ? Qu'elle en était la morale d'après toi ?
 

Reply

Marsh Posté le 04-03-2004 à 17:23:16    

DocMaboul a écrit :


Je ne me souviens plus, si dans O(n) n désigne la complexité ou le rang. De toute façon, ce n'est pas ça l'important mais que la complexité soit égale quelque soit le n fixé au départ et pour tous les rangs inférieurs.


 
 :ouch:  
 
 [:rotflmao]  
 
 [:abnocte invictus]


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 04-03-2004 à 17:24:42    

JagStang a écrit :

si une telle formule existait, ça se saurait... je crois que tu rêves


 
Elle existe puisque je l'ai trouvée. Mais je ne vais pas la donner comme ça...

Reply

Marsh Posté le 04-03-2004 à 17:26:15    

y'en a une sur WXXXXXXXXa, mais ça marche de 0 à 40 pour l'indice...

Reply

Marsh Posté le 04-03-2004 à 17:27:16    

ahahahaha... des chercheurs indiens ont trouvé récemment un des meilleurs algo de recherche de nombre premier. ils étaient 5 et je peux te dire qu'il étaient loin de O(1)....
 
TU ES UN GENIE !


---------------
What if I were smiling and running into your arms? Would you see then what I see now?  
Reply

Marsh Posté le 04-03-2004 à 17:27:34    

bjone a écrit :

y'en a une sur WXXXXXXXXa, mais ça marche de 0 à 40 pour l'indice...


ça doit être celle qui était dans mon programme basic alors :D
 
c'est fou tout ce qu'on pouvait vaire avec un comodore 64 y'a 15 ans :D


Message édité par MagicBuzz le 04-03-2004 à 17:27:55
Reply

Marsh Posté le 04-03-2004 à 17:27:39    

DocMaboul a écrit :


Elle existe puisque je l'ai trouvée.  


 
Je te conseille de disparaitre en vitesse, puisque la NSA va te courrir après, tu viens de détruire tout les systèmes de cryptage utilisés actuellement en informatique.


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 04-03-2004 à 17:27:47    

Hey petit frère, ça pète? :)
 
t'es pas gêné de venir demander des résolutions de TP par ici?  En plus t'essaie de faire passer pour un obsédé sexuel, tu veux attirer la honte sur la famille ou quoi?
 
bon je te laisse, un de mes programmeurs vient d'engueuler le client et faut que je joue les démineurs!
 
A+


---------------
Il vous faut apprendre à penser en 4 dimensions!
Reply

Marsh Posté le 04-03-2004 à 17:28:20    

bjone a écrit :

y'en a une sur WXXXXXXXXa, mais ça marche de 0 à 40 pour l'indice...


 
exemple très simple (mais tout à fait incomplet)
 
x=2n+1, ca te donne tous les nombres premiers de 3 à 9 exclu.

Reply

Marsh Posté le 04-03-2004 à 17:28:29    

DocMaboul a écrit :


 
Elle existe puisque je l'ai trouvée. Mais je ne vais pas la donner comme ça...


 
inscris-toi vite pour la médaille Fields alors :D

Reply

Marsh Posté le 04-03-2004 à 17:28:29    

il y a une formule qui marche pour les indices de 0 à 40 (donc domaine réduit)

Reply

Marsh Posté le 04-03-2004 à 17:28:40    

DocMaboul a écrit :


 
Elle existe puisque je l'ai trouvée. Mais je ne vais pas la donner comme ça...

ben je vais aller dire ça aux gens de RSA. au lieu de prendre des nombres aléatoires et tester s'il sont premiers avec des algo type monte-carlo, ils seront content de pouvoir faire NombrePremierIndex(randint()), ça grandement leur facilité le boulot

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed