•DITzoneC
|
 |
« : Octombrie 17, 2007, 23:44:39 » |
|
Aici puteţi discuta despre problema Modulo.
|
|
|
Memorat
|
|
|
|
•Dastas
|
 |
« Răspunde #1 : Octombrie 18, 2007, 11:58:56 » |
|
Nu e cam mult o secunda la problema asta? 
|
|
|
Memorat
|
|
|
|
•DITzoneC
|
 |
« Răspunde #2 : Octombrie 18, 2007, 16:32:14 » |
|
Limita a fost micsorata la 0.1. Solutiile au fost reevaluate.
|
|
|
Memorat
|
|
|
|
•coderninu
Strain
Karma: 1
Deconectat
Mesaje: 26
|
 |
« Răspunde #3 : Octombrie 20, 2007, 14:42:50 » |
|
care e faza cu testul 7 ?. iau wa la el. Idee : a%=c, b%=c; rez=1; for (i=1; i<=b; i++) rez=(rez*a)%c; si apoi afisez rez. am crezut ca nu imi intra in tipuri standard, am bagat si nr mari , am incercat si pe long long si cu long double( cu conversii la fiecare pass), si tot la 90 pct ajunge. b nu poate fi e sa zic sa nu imi intre deloc in for, si chiar daca ar fi fost 0 tot ar da rez bun ca ar ramane rez==1; ma scoate din mintzi  . pls help
|
|
|
Memorat
|
|
|
|
•skyel
|
 |
« Răspunde #4 : Octombrie 20, 2007, 15:11:16 » |
|
pt a=4, b=4, c=4 iti afiseaza 1, iar rez e 0...deci e doar o coincidenta ca iei atat de mult, deoarece (a^b)mod(c) nici in o mie de ani nu va fi (a mod c)^(b mod c), adica principiu pe care spui tu ca te bazezi
|
|
|
Memorat
|
|
|
|
•coderninu
Strain
Karma: 1
Deconectat
Mesaje: 26
|
 |
« Răspunde #5 : Octombrie 20, 2007, 17:07:56 » |
|
stiu ca e o coincidentza, prima data cand am trimis sursa care facea pana la b mod c m-am si mirat ca am luat 70, apoi am bagat long long si am luat 90 si am crezut ca o fi bine.am lasat pana la b prima data si iau 60 pct si 4 tle. oricum algoritmul meu nu e bun. imi poti da ceva indicatii cum se rezolva?
|
|
|
Memorat
|
|
|
|
•DITzoneC
|
 |
« Răspunde #6 : Octombrie 20, 2007, 19:45:46 » |
|
Cea mai la indemana metoda este sa te gandesti cum poti calcula ab cunoscand ab/2. Apoi pentru calculul lui ab/2 aplici acelasi rationament.
|
|
|
Memorat
|
|
|
|
•coderninu
Strain
Karma: 1
Deconectat
Mesaje: 26
|
 |
« Răspunde #7 : Octombrie 25, 2007, 22:26:29 » |
|
Ms de ajutor.Am luat pana la urma 100  .
|
|
|
Memorat
|
|
|
|
•ciprianf
|
 |
« Răspunde #8 : Ianuarie 04, 2008, 16:35:37 » |
|
Pf...care poate sa-mi explice mai clar principiul cu care rezolv problema asta...ca nu inteleg...
|
|
|
Memorat
|
|
|
|
•astronomy
|
 |
« Răspunde #9 : Ianuarie 04, 2008, 16:50:40 » |
|
Exact cum a spus Ditzone mai sus. Vrei sa calculezi ab, daca b este impar ab=ab-1*a, altfel ab=ab/2*ab/2. Din cauza ca b`ul se tot imparte la 2 complexitatea e logaritmica.
|
|
|
Memorat
|
|
|
|
•Tabara
|
 |
« Răspunde #10 : Ianuarie 04, 2008, 19:48:59 » |
|
Pf...care poate sa-mi explice mai clar principiul cu care rezolv problema asta...ca nu inteleg...
si sa nu uiti sa faci % C la fiecare pas pentru ca (A*B) % C = (A%C)*(B%C) 
|
|
« Ultima modificare: Ianuarie 04, 2008, 19:51:19 de către Tabara Mihai »
|
Memorat
|
|
|
|
•stef2n
|
 |
« Răspunde #11 : Ianuarie 04, 2008, 21:07:15 » |
|
si sa nu uiti sa faci % C la fiecare pas pentru ca (A*B) % C = (A%C)*(B%C)  (A*B)%C = ((A%C)*(B%C))%C
|
|
|
Memorat
|
Exista 10 categorii de oameni: cei care inteleg sistemul binar si cei care nu il inteleg.
|
|
|
•Tabara
|
 |
« Răspunde #12 : Ianuarie 04, 2008, 21:10:02 » |
|
si sa nu uiti sa faci % C la fiecare pas pentru ca (A*B) % C = (A%C)*(B%C)  (A*B)%C = ((A%C)*(B%C))%C
|
|
|
Memorat
|
|
|
|
•zalman
Strain
Karma: -11
Deconectat
Mesaje: 31
|
 |
« Răspunde #13 : Ianuarie 11, 2008, 20:54:50 » |
|
nu stiu ce are...am facut problema in cel mai simplu mod...am ridicat pe A la puterea B si apoi am facut modulo...si iau o pct  pls..help
|
|
|
Memorat
|
|
|
|
•Florian
|
 |
« Răspunde #14 : Ianuarie 11, 2008, 21:09:24 » |
|
Daca mai intai calculezi A^B, si apoi, la sfarsit faci modulo, sa stii ca sigur nu iti va da corect. Gandeste-te la limitele lui A si B, si, apoi, gandeste-te pe ce tip de date intra un numar (cica enorm de mare) care e A^B? Ideea e sa faci modulo la fiecare pas [probabil ca ai rez=rez*A, modifica cu rez=(rez*A)%C ). Oricum, solutia asta nu iti aduce punctajul maxim. Trebuie sa faci in O(log(B)). Vezi ce s-a scris pe topicul asta. 
|
|
« Ultima modificare: Ianuarie 11, 2008, 21:56:55 de către Andrei Grigorean »
|
Memorat
|
|
|
|
•Robybrasov
Strain
Karma: 3
Deconectat
Mesaje: 33
|
 |
« Răspunde #15 : Februarie 03, 2008, 12:31:06 » |
|
este necesar lucrul cu numere mari? vad ca poate avea multe cifre rezultatul.
|
|
|
Memorat
|
|
|
|
•cos_min
|
 |
« Răspunde #16 : Februarie 03, 2008, 12:36:28 » |
|
Se poate fara numere mari.
|
|
|
Memorat
|
vid...
|
|
|
•Robybrasov
Strain
Karma: 3
Deconectat
Mesaje: 33
|
 |
« Răspunde #17 : Februarie 03, 2008, 15:39:46 » |
|
da, m-am prins  restul este intotdeauna mai mic decat numarul la care se imparte, adica mai mic de 50.000
|
|
|
Memorat
|
|
|
|
•HoriaClement
Strain
Karma: -8
Deconectat
Mesaje: 7
|
 |
« Răspunde #18 : Februarie 26, 2008, 19:00:16 » |
|
Imi zice si mie cineva ce e gresit la pb....iau o p. 
|
|
|
Memorat
|
|
|
|
•DITzoneC
|
 |
« Răspunde #19 : Februarie 26, 2008, 19:11:06 » |
|
Dupa cum iti zice si evaluatorul ai o eroare de compilare. Tu nu iti testezi problemele pe calculatorul tau ? Dupa declaratia p:longint pune ;
|
|
|
Memorat
|
|
|
|
•toni2007
|
 |
« Răspunde #20 : Februarie 26, 2008, 19:14:03 » |
|
Tu te astepti ca a la puterea b sa iti intre in longint? macar pune si tu in64 (parca asta e echivalentul lui long long in pascal) da oricum nu cred ca iti ia macar un test  for i:=1 to b do p:=p*a; k:=p mod c;
tu aici mergi cu i de la 1 la b si faci ceva gen p=a^b nu o sa iti intre in longint pt a si b mai mari de 15  uite-te si tu pe topicul asta poate gesesti o rezolvare mai buna 
|
|
« Ultima modificare: Februarie 26, 2008, 19:30:09 de către Pripoae Teodor Anton »
|
Memorat
|
|
|
|
•HoriaClement
Strain
Karma: -8
Deconectat
Mesaje: 7
|
 |
« Răspunde #21 : Februarie 26, 2008, 19:42:43 » |
|
Mi-au mers toate testele...aloooo...da..nu vrea...si ce vrei sa-mi zici tu acolo cu longu'?
|
|
|
Memorat
|
|
|
|
•toni2007
|
 |
« Răspunde #22 : Februarie 26, 2008, 19:47:34 » |
|
ce sa vrea? din cate vad ai eroare de compilare... 
|
|
|
Memorat
|
|
|
|
•HoriaClement
Strain
Karma: -8
Deconectat
Mesaje: 7
|
 |
« Răspunde #23 : Februarie 26, 2008, 19:49:35 » |
|
ce eroare...mie-mi merge 
|
|
|
Memorat
|
|
|
|
|
|