Pagini: 1 2 [3]   În jos
  Imprimă  
Ajutor Subiect: 483 Maxd  (Citit de 15371 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
TheNechiz
De-al casei
***

Karma: 30
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #50 : Iunie 25, 2012, 20:26:30 »

Deci,orice număr are un divizor prim mai mare decât radicalul lui Think
Asta înseamna că pentru 2,000,000,000 ,prim[k] > = sqrt(2000000000)
sqrt(2000000000) = 44721.4....
Am încercat să mai măresc vectorul , dar după iau "KILLED BY SIGNAL 11" și asta înseamnă că ies din limite.
http://infoarena.ro/job_detail/761248
 Embarassed
Memorat
klamathix
Echipa infoarena
Nu mai tace
*****

Karma: 733
Deconectat Deconectat

Mesaje: 1.216



Vezi Profilul
« Răspunde #51 : Iunie 25, 2012, 20:27:52 »

Un numar prim mai mic decat radicalul lui*.
Memorat
TheNechiz
De-al casei
***

Karma: 30
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #52 : Iunie 25, 2012, 20:36:25 »

Asta înseamnă că ar trebui să mai măresc vectorul "prim",ciurul este până la 45000 > 44721.4....
Dar de la 1 până la 45000 sunt 4676 numere prime,k poate fi maxim 5500. Eh?
Am văzut că iese din int,l-am pus long,dar tot iau SIGFPE. d'oh!
« Ultima modificare: Iunie 25, 2012, 20:42:08 de către Birisan Razvan » Memorat
klamathix
Echipa infoarena
Nu mai tace
*****

Karma: 733
Deconectat Deconectat

Mesaje: 1.216



Vezi Profilul
« Răspunde #53 : Iunie 25, 2012, 20:49:05 »

Int-ul este pe 32 de biti acum, deci merge pana in 2 miliarde si ceva. Problema ta apare cand k trece de numarul de numere prime pe care le-ai stocat (asta se intampla cand ultimul factor prim al numarului e mai > sqrt. Astfel prim[k] nu prea mai stii ce contine, poate fi 0 si daca incerci sa faci modulo cu 0 primesti SIGFPE.
Memorat
TheNechiz
De-al casei
***

Karma: 30
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #54 : Iunie 25, 2012, 20:57:11 »

Trebuie să mă mai gândesc la problema asta Aha
Mulțumesc pentru ajutor Smile
Memorat
Steve
Client obisnuit
**

Karma: 36
Deconectat Deconectat

Mesaje: 72



Vezi Profilul
« Răspunde #55 : Iunie 26, 2012, 08:20:18 »

Initializezi toate numerele prime in vectorul final (cel cu nr de divizori pt numerele intre a si b) cu 2, restul cu 1, apoi pentru fiecare prim i, parcurgi incepand cu primu nr divizibil cu i care e >= a (si >= i) pana la ultimu numar divizibil cu i care e <= b. Hope it helps.
« Ultima modificare: Iunie 26, 2012, 12:22:45 de către Stefan Eniceicu » Memorat
TheNechiz
De-al casei
***

Karma: 30
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #56 : Iunie 26, 2012, 18:16:01 »

Am modificat puțin  Whistle
Programul merge pentru testele de la OJI Smile
Dar iau WA pe testele 4 și 8.
Mă poate ajuta cineva cu un contra-exemplu? sad
Sau
O sugestie? Embarassed
Pentru
Cod:
2 20002
Se obține
Cod:
15120 80 2

?
« Ultima modificare: Iunie 27, 2012, 09:16:30 de către Birisan Razvan » Memorat
Steve
Client obisnuit
**

Karma: 36
Deconectat Deconectat

Mesaje: 72



Vezi Profilul
« Răspunde #57 : Iunie 27, 2012, 10:59:21 »

Da bine...  Rolling Eyes

Incearca:
in:
1999980000 2000000000
out:
1999998000 1280 1

in:
15 15
out:
15 4 1

in:
313 313
out:
313 2 1

in:
1 20001
out:
15120 80 2

in:
1 1
out:
1 1 1

in:
321312 328921
out:
327600 180 1

Daca iti merg in continuare, da PM cu sursa.
Memorat
TheNechiz
De-al casei
***

Karma: 30
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #58 : Iunie 27, 2012, 16:05:29 »

Mi-am dat seama de greșeală Rolling Eyes
Am luat 100p Winner 1st place
Mulțumesc pentru ajutor,îți rămân dator. Smile
Memorat
AndreiIstetul
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« Răspunde #59 : Martie 12, 2014, 20:43:30 »

O dat Cel de Sus sa reusesc sa fac si problema asta de 100 dupa atata timp in care m-am chinuit cu ciururi si fel de fel de foruri...  Very Happy
Memorat
Pagini: 1 2 [3]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines