|
Titlul: 129 Cercuri Scris de: ditzone din Octombrie 23, 2005, 21:52:50 Aici puteţi discuta despre problema Cercuri (http://infoarena.ro/problema/cercuri).
Titlul: 129 Cercuri Scris de: Iorgulescu Calin din Octombrie 24, 2005, 20:32:58 Am si eu o mica intrebare... In legatura cu valorile de test de pe site.
Sursa mea, care a luat 100 de puncte... la testul 5 5 5 6 6 6 afiseaza ca raspuns... 11.900... iar pe site scrie ca valoare... 7.714. Pare un pic dubios...nu? :-k Titlul: 129 Cercuri Scris de: Mircea Pasoi din Octombrie 24, 2005, 23:02:27 Citat din mesajul lui: calinux Am si eu o mica intrebare... In legatura cu valorile de test de pe site. Sursa mea, care a luat 100 de puncte... la testul 5 5 5 6 6 6 afiseaza ca raspuns... 11.900... iar pe site scrie ca valoare... 7.714. Pare un pic dubios...nu? :-k Intr-adevar dubios :shock: S-a rezolvat bug-ul si s-a recorectat problema atat in Arhiva cat si la concurs. :-' Titlul: 129 Cercuri Scris de: darlene din Octombrie 25, 2005, 15:49:40 :(...yo nu inteleg dc imi ia 0 pb ...rezolvarea o presupun corecta...e cineva kre ii da bn si dupa concurs?...
Titlul: 129 Cercuri Scris de: Bogdan-Cristian Tataroiu din Octombrie 25, 2005, 16:33:59 Citeste http://astronomy.swin.edu.au/~pbourke/geometry/2circle/
Titlul: 129 Cercuri Scris de: darlene din Octombrie 25, 2005, 18:49:30 mc..dar am citit aia...daia ma mir dc nu imi emrge:(
Titlul: Cercuri tangente Scris de: Dan-Constantin Spatarel din Octombrie 26, 2005, 20:56:58 Dupa foarte multe submisii fara nici un rezultat, am modifcat sursa gresit (din punctul meu de vedere), ca sa constat cu stupoare ca evaluatorul imi considera programul corect. :shock:
Asadar, iata modificarea, in conditia pentru cercuri tangente: corect (dupa mine): if ((R1+R2)*(R1+R2) == (X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2) || (R1-R2)*(R1-R2) == (X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2)) corect dupa evaluator: if (abs(R1+R2 - sqrt((X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2))) <=0.0001 || abs(R1-R2 - sqrt((X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2))) <= 0.0001 ) Daca ar fi dupa mine, as re-re-corecta problema \:D/ . In fine... voi ce parere aveti? :-k Titlul: Re: Cercuri tangente Scris de: Mircea Pasoi din Octombrie 26, 2005, 21:33:49 Citat din mesajul lui: spatarel Dupa foarte multe submisii fara nici un rezultat, am modifcat sursa gresit (din punctul meu de vedere), ca sa constat cu stupoare ca evaluatorul imi considera programul corect. :shock: Asadar, iata modificarea, in conditia pentru cercuri tangente: corect (dupa mine): if ((R1+R2)*(R1+R2) == (X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2) || (R1-R2)*(R1-R2) == (X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2)) corect dupa evaluator: if (abs(R1+R2 - sqrt((X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2))) <=0.0001 || abs(R1-R2 - sqrt((X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2))) <= 0.0001 ) Daca ar fi dupa mine, as re-re-corecta problema \:D/ . In fine... voi ce parere aveti? :-k Am pus linia corecta zisa de tine in locul la cea cu abs() in sursa ta si tot ia 100.. eu zic sa te uiti mai atent, fiindca greseai altceva inainte. :P Deci, nu e cazul sa se recorecteze nimic [-X Titlul: :(( Scris de: Dan-Constantin Spatarel din Octombrie 26, 2005, 21:47:45 Corect! Imi cer scuze! Am mai modificat ceva, dar parea inofensiv... De unde rezulta ca acolo s-a strecurat bug-ul :(.
Sper sa nu te superi, dar o sa spun si ce am gresit, ca sa nu mai greseasca si altii :P - am pus conditia de cercuri fara puncte comune inaintea celei de cercuri tangente. My Bad! ](*,) Titlul: 129 Cercuri Scris de: darlene din Octombrie 27, 2005, 16:09:04 spatarel:
1.corect (dupa mine): if ((R1+R2)*(R1+R2) == (X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2) || (R1-R2)*(R1-R2) == (X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2)) 2.corect dupa evaluator: if (abs(R1+R2 - sqrt((X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2))) <=0.0001 || abs(R1-R2 - sqrt((X1-X2)*(X1-X2) + (Y1-Y2)*(Y1-Y2))) <= 0.0001 ) cele 2 chestii sunt echivalente...doar k la 2. avand in vedere k lucrezi cu var de tipul real-pascal sau double-C compararea a 2 variabile d tipul ala se face mai greu si de aceea mai usor se compara diferenta lor cu 0.0001 in cazul de fata... Titlul: 129 Cercuri Scris de: cristi8 din Octombrie 27, 2005, 17:12:47 nu ca se face mai greu, dar apar erori de precizie. de exemplu:
Cod: double a, b; afiseaza 2 valori egale, si 0. adica la o anumita zecimala (care nu e afisata) cele 2 numere difera. si nu sunt == (EGALE) Titlul: 129 Cercuri Scris de: Mihai Leonte din Noiembrie 06, 2005, 10:10:32 Hmm... evaluatorul la problema asta pare sa aiba ceva ciudat. Probabil ca problema mea nu e corecta dpdv al preciziei de 3 zecimale. Dar mie imi dau rezultatele din test (7.zz4) si formulele matematice par foarte OK. Insa mi se pare cel putin bizar ca imi evalueaza un singur test.
De ce doar unul? Am trimis problema de mai multe ori, gandindu-ma la vreo posibila eroare a evaluatorului, dar acelasi rezultat. Titlul: 129 Cercuri Scris de: Filip Cristian Buruiana din Noiembrie 06, 2005, 13:39:19 :-' Problema a fost data la Happy Coding II, si acolo una din reguli era ca problemele sunt evaluate folosind un singur test. Asa ca evaluatorul nu are nimic :mrgreen: din fericire...
Titlul: 129 Cercuri Scris de: Tabara Mihai din Noiembrie 06, 2005, 20:48:03 si mie imi iese perfect fisierul de intrare dar nu stiu ce am gresit de iau 0 puncte.....ma mai gandesc
Titlul: 129 Cercuri Scris de: Tabara Mihai din Noiembrie 08, 2005, 17:49:00 incepe sa ma dispere problema asta....nu-mi iese si gata.......cred ca am sa fac ce face avatarul asta ](*,) ](*,) ](*,) ](*,) ](*,) ](*,) ](*,)
acuma serios..nu-mi dau seama ce gresesc......partea matematica am facut-o perfect..(nu cred ca am gresit formulele)...iar conditiile le-am pus cum trebuie....si imi si iese testul din exemplu.....nu inteleg. Intrebare:Nu mai puneti va rog un mic test din care poate as putea sesiza greseala in prg-lu meu???pls... Titlul: 129 Cercuri Scris de: Bogdan-Cristian Tataroiu din Noiembrie 08, 2005, 18:05:54 Verifica partea matematica cu linkul care l-am pus mai sus si daca tot nu-ti iese rescrie sursa ca te ajuta uneori :peace:
Titlul: 129 Cercuri Scris de: u-92 din Noiembrie 08, 2005, 18:22:48 probabil gresesti la precizie, daca folosesti de mai multe ori sqrt().. cel putin asta greseam eu, cand am redus la o singura apelare a functiei sqrt() mi-a mers
Titlul: 129 Cercuri Scris de: Tabara Mihai din Noiembrie 09, 2005, 19:18:29 linkul ii ok....am luat din el partea matematica...ba chiar mai mult....am gasit inca un site:
mathworld.wolfram.com/Circle-CircleIntersection.html si tot nu imi merge.....acuma incerc sa reusesc o singura apelare sqrt poate poate o sa-mi mearga.... Titlul: 129 Cercuri Scris de: Tabara Mihai din Noiembrie 09, 2005, 19:40:47 nu pot sa scap de functia sqrt.... ](*,) ](*,) ](*,) ](*,) ](*,) ](*,) ](*,)
la naiba cu el sqrt()......am incercat in toate modurile.... d = sqrt((x1 - x2) * (x1 - x2) + (o1 - o2) * (o1 - o2)); aici sunt obligat sa-l las....dar dincolo la conditie nu reusesc sa scap de el.... #-o Titlul: 129 Cercuri Scris de: nivan din Noiembrie 09, 2005, 19:48:48 Nu cred ca se referea sa scoti SQRT de peste tot...... ci sa nu folosesti la acelasi numar astfel incat sa se faca o aproximare gresit de la primul SQRT la al doilea. (Da nu te lua dupa mine ca eu inca nu am facut problema...... )
Titlul: 129 Cercuri Scris de: Sara Nicolae Bogdan din Noiembrie 09, 2005, 20:05:47 Cod:
Mie atata imi da pe exemplu ... Din enunt nu reiese ca ar trebui aproximat ; voua cat va da cu 4 zecimale la primele 2 perechi de cercuri ? :flex: Titlul: 129 Cercuri Scris de: Tabara Mihai din Noiembrie 09, 2005, 20:11:39 7.7136
7.7136 18.7083 -1 -2 imi afiseaza si mie tot atata...dar daca in exemplu arata 3 zecimale probabila ca atata trebuie...daca erau zerouri poate ca trebuie sa afisam cu 4 dar 7.713 are a 4-a zecimala 6...deci trebuie afisat cu 3 zecimale....eu asa am inteles Titlul: 129 Cercuri Scris de: Sara Nicolae Bogdan din Noiembrie 09, 2005, 20:33:44 Cod:
Tu ai citit ce-am scris ? :eyebrow: Titlul: 129 Cercuri Scris de: Tabara Mihai din Noiembrie 09, 2005, 20:38:24 poate ca am o exprimare putin mai greoaie..dar ma cam grabeam cand am scris.....my point is ca si mie imi afiseaza cu 4 zecimale exact ca si tie...punct!
Titlul: Răspuns: 129 Cercuri Scris de: George Popoiu din Februarie 04, 2011, 19:50:27 Imi explicati si mie va rog de unde vine P2 = P0 + a(P1-P0)/d ?
Formula e in linkul asta http://astronomy.swin.edu.au/~pbourke/geometry/2circle/ (http://astronomy.swin.edu.au/~pbourke/geometry/2circle/) Titlul: Răspuns: 129 Cercuri Scris de: UAIC.VlasCatalin din Iunie 27, 2011, 16:45:00 spuneti-mi cum procedam in cazul cind un cerc se include in altul si nu are nici un punct de intersectie cu cercul mare?
Titlul: Răspuns: 129 Cercuri Scris de: Paul-Dan Baltescu din Iunie 27, 2011, 17:10:36 Daca intrebarea ta este de fapt cum recunosti un astfel de caz, raspunsul este urmatorul: un astfel de caz poate fi recunoscut in functie de distanta dintre centrele cercurilor si diferenta razelor celor doua cercuri.
Daca nu asta e raspunsul pe care il cautai, te rog reformuleaza intrebarea. :) Titlul: Răspuns: 129 Cercuri Scris de: UAIC.VlasCatalin din Iunie 27, 2011, 18:23:41 deja nu mai conteaza ce am avut in vedere, pentru ca am luat 100 puncte, dar totusi ms de receptie :ok:
Titlul: Răspuns: 129 Cercuri Scris de: Cobzaru Adrian-Andrei din Martie 21, 2012, 18:04:59 Ma puteti ajuta si pe mine?Sursa mea ia 0 puncte, dar imi afiseaza corect exemplul.Am folosit link-ul de mai sus pentru formule.
Cod: d=sqrt(((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))*1.0); Editat de admin: Foloseste tagul "code" cand postezi surse. Titlul: Răspuns: 129 Cercuri Scris de: Dan H Alexandru din Iulie 26, 2012, 11:43:17 Exemplul iti da bine pentru ca nu apare nici un "-3" in exemplu. Conditia corecta pentru al 3-lea caz este:
Cod: if( ((Raza+Raza2)*(Raza+Raza2) == (X-X2)*(X-X2) + (Y-Y2)*(Y-Y2) || (Raza-Raza2)*(Raza-Raza2) == (X-X2)*(X-X2) + (Y-Y2)*(Y-Y2)) ) Succes. :ok: Titlul: Răspuns: 129 Cercuri Scris de: Pirtoaca George Sebastian din August 26, 2013, 09:31:44 Cat trebuie sa dea pentru :
Cod: 100 Titlul: Răspuns: 129 Cercuri Scris de: Constantinescu Adrian din Martie 01, 2014, 23:13:15 linkul ii ok....am luat din el partea matematica...ba chiar mai mult....am gasit inca un site: multumesc frumos pentru link... am reusit sa rezolv problema cand aveam intersectia in 2 puncte. trebuie doar sa calculezi ipotenuza si sa o inlocuiesti in formula. URAAA!!!mathworld.wolfram.com/Circle-CircleIntersection.html si tot nu imi merge.....acuma incerc sa reusesc o singura apelare sqrt poate poate o sa-mi mearga.... Titlul: Răspuns: 129 Cercuri Scris de: Potra Vlad din Mai 27, 2014, 17:27:57 Cineva care a luat 100 poate sa imi zica ce .out e pentru testul :
Cod: 17 Titlul: Răspuns: 129 Cercuri Scris de: Tudor Varan din Mai 27, 2014, 20:46:41 Cod: -2 Titlul: Răspuns: 129 Cercuri Scris de: Breahna David din Iunie 16, 2014, 09:31:23 Ma ajută și pe mine cineva ???
Puteți să-mi spuneți de ce primesc eroare de compilare ??/ ](*,) ](*,) ](*,) ](*,) ](*,) :fighting: :angry: http://www.infoarena.ro/job_detail/1198559 am, găsit o eroare, făceam o împărțire la 0,, da tot îmi dă eroare de compilare.. !!! Și nu înțeleg pe PC, se compilează bine și rezultatele sunt bune.. iată noua sursă. http://www.infoarena.ro/job_detail/1198602 ,, are cineva idei ?? ](*,) ](*,) :angry: :angry: P.S: s-a rezolvat.. !!! :yahoo: :yahoo: nu știam că math.h are predeclarată ca variabilă globală y1, deci trebuia s-o înlocuiesc. =D> :ok: |