Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: 688 Patrat  (Citit de 3361 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
astronomy
Nu mai tace
*****

Karma: 204
Deconectat Deconectat

Mesaje: 492



Vezi Profilul
« : Aprilie 06, 2008, 14:31:37 »

Aici puteţi discuta despre problema Patrat.
Memorat
Matei14
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #1 : Mai 06, 2008, 20:19:46 »

este un lucru ce nu inteleg ... trebuie afisate numerele care au cel putin 2 moduri de scriere ca suma de patrate sau cele care au doar 2 moduri (in enunt scrie cel putin 2 moduri iar la date de iesire scrie 2 moduri) ... sau nu am inteles eu bine... ?
Memorat
gabor_oliviu1991
Nu mai tace
*****

Karma: 28
Deconectat Deconectat

Mesaje: 200



Vezi Profilul
« Răspunde #2 : Mai 06, 2008, 20:48:29 »

doar cele care au doua moduri Smile
Memorat
Mishu91
Nu mai tace
*****

Karma: 169
Deconectat Deconectat

Mesaje: 751



Vezi Profilul
« Răspunde #3 : Mai 06, 2008, 20:51:23 »

Io le-am afisat pe alea care se pot scrie in cel putin doua moduri si am luat 100  Smile
Memorat
shnako
Client obisnuit
**

Karma: 3
Deconectat Deconectat

Mesaje: 50



Vezi Profilul
« Răspunde #4 : Februarie 19, 2009, 10:25:26 »

Ce are mai special ultimul test ? Iau 90 de puncte si la ultimul incorect  Think...
Memorat
gabor_oliviu1991
Nu mai tace
*****

Karma: 28
Deconectat Deconectat

Mesaje: 200



Vezi Profilul
« Răspunde #5 : Februarie 19, 2009, 15:54:07 »

ai tratat cazut in care nu gasesti nicio pereche de numere care sa respecte probprietatea?...

Citat
In cazul in care intre x si y nu exista niciun numar avand proprietatea ceruta, in fisier se va scrie doar numarul 0.
Memorat
shnako
Client obisnuit
**

Karma: 3
Deconectat Deconectat

Mesaje: 50



Vezi Profilul
« Răspunde #6 : Februarie 19, 2009, 18:20:11 »

Tratat ... Nu era de la aia dar ms oricum  Ok
P.S.: Pentru cei care pica ultimul test (am vazut ca nu sunt singurul), incercati cel mai defavorabil caz Smile
Memorat
Vladimio
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« Răspunde #7 : Martie 13, 2009, 21:08:23 »

mie imi ies exemplele date de iei si cateva exemple de-ale mele.
dar cand am trimis sursa mi-au dat doar 10 p  Angry
puteti sa mai dati si alte exemple va rog ?
Memorat
vlad_oltean
Strain
*

Karma: 2
Deconectat Deconectat

Mesaje: 25



Vezi Profilul
« Răspunde #8 : Martie 16, 2009, 14:11:01 »

 Huh Huh sursa mea foloseste 3 int-uri si 2 bool-uri ca variabile. De unde am 200 de kile de memorie folosita?  Huh
Memorat
danalex97
Vorbaret
****

Karma: 54
Deconectat Deconectat

Mesaje: 192



Vezi Profilul
« Răspunde #9 : Martie 22, 2009, 14:45:27 »

 Brick wall 
Programul meu e prea incet
Idei???
P.S.:Lucrez in Pascal
Memorat
miculprogramator
Nu mai tace
*****

Karma: 65
Deconectat Deconectat

Mesaje: 306



Vezi Profilul
« Răspunde #10 : August 03, 2009, 00:56:45 »

Am nevoie de putin ajutor la problema asta, iau TLE pe toate testele. Am impresia ca-mi intra intr-o bucla infinita, dar nu ma prind unde  Eh?:

Cod:
for (i=1;i<=20000;i++)
        ok[i]=0;
    for (i=1;i<=sqrt(20000);i++) 
        for (j=i+1;j<=sqrt(20000);j++)
            if (i*i+j*j<=20000) ok[i*i+j*j]=1;
    for (i=X;i<=Y;i++)
        if (ok[i]==1) g<<i<<endl;
Memorat
gabitzish1
Moderatori infoarena
Nu mai tace
*****

Karma: 321
Deconectat Deconectat

Mesaje: 926



Vezi Profilul
« Răspunde #11 : August 03, 2009, 07:36:20 »

Functia sqrt() mananca ceva timp si tu o apelezi cam de multe ori. Incearca sa retii valoarea intr'o variabila, inainte de for(), si sa parcurgi pana la aia. Sau ar mai merge sa pui asa :
Cod:
for(i = 1; i * i <= 20000; i++)
Memorat
SpiderMan
Nu mai tace
*****

Karma: -463
Deconectat Deconectat

Mesaje: 937



Vezi Profilul
« Răspunde #12 : Ianuarie 02, 2010, 18:49:02 »

Buna. Am vazut pe solutia oficiala http://infoarena.ro/grigore-moisil-2008/solutii o solutie gresita. Acel algoritm afla numerele care se pot scrie ca suma de 2 patrate ,care au minimum o combinatie. In problema se cer toate nr. care se pot scrie ca si o combinatie de 2 patrate, deci nr. 26 nu este bun. Daca o sa faceti dupa acel algoritm o sa observati ca pe 26 si multe alte numere le afiseaza. Eu zic asa: unde scrie asta:
Cod:
daca i * i + j * j <= 20000
          ok[i * i + j * j] = true
Sa arate asa:
Cod:
daca i * i + j * j <= 20000
            ++ok[i * i + j * j]
Iar ok sa fie de tip short. Iar ultimul pentru o sa verifice daca ok[]<1. Daca este mai mare atunci este solutie.Daca nu nu este!
Memorat
roxana_savulescu
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #13 : Aprilie 04, 2011, 22:40:54 »

Exact asa am facut si eu problema.Am facut un vector in care numaram cate sume de patrate imi dau numerele din intervalul (x,y).
Apoi parcurgeam din nou vectorul si le afisam pe cele care erai >=2.
Dar iau 40 de puncte si chiar nu inteleg de ce.Sugestii?
Memorat
VisuianMihai
De-al casei
***

Karma: -9
Deconectat Deconectat

Mesaje: 121



Vezi Profilul
« Răspunde #14 : Decembrie 29, 2011, 11:44:24 »

cum se poate verifica pe biti daca un numar e patrat perfect?
eu stiam
Cod:
bool patrat(int n)
{
return (n&(n-1))==0;
dar nu imi da, numai pentru unele patrate.
Memorat
SpiderMan
Nu mai tace
*****

Karma: -463
Deconectat Deconectat

Mesaje: 937



Vezi Profilul
« Răspunde #15 : Decembrie 29, 2011, 11:55:40 »

Nup, aia e pentru putere a lui 2, pentru patrat perfect nu am facut niciodata, dar o sa ma uit Smile.
Memorat
S7012MY
Nu mai tace
*****

Karma: 26
Deconectat Deconectat

Mesaje: 648



Vezi Profilul
« Răspunde #16 : Decembrie 29, 2011, 12:10:58 »

cum se poate verifica pe biti daca un numar e patrat perfect?
eu stiam
Cod:
bool patrat(int n)
{
return (n&(n-1))==0;
dar nu imi da, numai pentru unele patrate.
Nu se poate verifica daca un numar e patrat perfect be biti. Incearca sa abordezi problema invers Smile
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

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