Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: 305 Triplete  (Citit de 5008 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
DITzoneC
Nu mai tace
*****

Karma: 301
Deconectat Deconectat

Mesaje: 962



Vezi Profilul
« : Ianuarie 21, 2007, 23:56:17 »

Aici puteţi discuta despre problema Triplete.
« Ultima modificare: Ianuarie 30, 2007, 20:49:50 de către Crestez Dan-Leonard » Memorat
anamaria1
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« Răspunde #1 : Februarie 24, 2007, 12:38:22 »

va rog frumos imi puteti spune ce are atat de special ultimul test?e singurul caz care imi da incorect Brick wall
Memorat
wefgef
Nu mai tace
*****

Karma: 1049
Deconectat Deconectat

Mesaje: 3.008


razboinicu' luminii


Vezi Profilul
« Răspunde #2 : Februarie 24, 2007, 20:47:18 »

Unele variabile trebuie declarate unsigned int (sunt mai mari de 2 miliarde). Ai grija de asta?
Memorat

omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
peanutz
Nu mai tace
*****

Karma: 10
Deconectat Deconectat

Mesaje: 296



Vezi Profilul
« Răspunde #3 : Februarie 24, 2007, 21:03:30 »

Vezi ca e unsigned long int....
Memorat

....staind....
bogdan2412
Echipa infoarena
Nu mai tace
*****

Karma: 410
Deconectat Deconectat

Mesaje: 951



Vezi Profilul
« Răspunde #4 : Februarie 24, 2007, 21:34:05 »

in gcc int = long int...
Memorat
pocaitu
De-al casei
***

Karma: -26
Deconectat Deconectat

Mesaje: 141



Vezi Profilul
« Răspunde #5 : Februarie 25, 2007, 22:03:25 »

  Exista vreo functie care returneaza in O(1) nr de biti de 1 ai unui nr ?
Memorat

This is not a signature ! I repeat, this is not a signature !
wefgef
Nu mai tace
*****

Karma: 1049
Deconectat Deconectat

Mesaje: 3.008


razboinicu' luminii


Vezi Profilul
« Răspunde #6 : Februarie 25, 2007, 22:06:19 »

Eu nu cunosc o astfel de functie sau macar un algoritm care sa faca asta. Poti in schmb sa faci o preprocesare si sa raspunzi in O(1).

Exista totusi posibilitatea sa afli in O(nr_de_biti_de_1) folosindu-te de operatii pe biti.
Memorat

omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
amadaeus
Client obisnuit
**

Karma: 28
Deconectat Deconectat

Mesaje: 93



Vezi Profilul
« Răspunde #7 : Februarie 26, 2007, 15:44:20 »

  Exista vreo functie care returneaza in O(1) nr de biti de 1 ai unui nr ?
Numarul de biti de 1 se numeste Hamming weight. Il poti calcula in O(log N), cu o masca pe biti, sau cu niste formule dubioase in timp (aproape Very Happy ) O(1). Vezi http://en.wikipedia.org/wiki/Hamming_weight#Efficient_implementation
Memorat

"one of these days I'm going to cut you into little pieces..."
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #8 : Februarie 26, 2007, 18:54:21 »

la problema asta daca (,) calculezi numarul de biti de 1 al unui nr in log n e prea mult. Iti trebuie o(1). Cel mai bine e cu prepocesare cum a zis si andrei grigorean.
Memorat
peanutz
Nu mai tace
*****

Karma: 10
Deconectat Deconectat

Mesaje: 296



Vezi Profilul
« Răspunde #9 : Mai 08, 2007, 21:32:23 »

Daca numeri bitii de 1 normal ajungi tot la complexitatea intiala.. E chiar absolut necesar sa faci precalculare? Nu mi se pare normal sa faci precalculare la o problema ca sa iti intre in timp. Mai ales ca daca ai lucra pe 16 biti ajungi si pe la numere de 5 cifre..
Memorat

....staind....
astronomy
Nu mai tace
*****

Karma: 204
Deconectat Deconectat

Mesaje: 492



Vezi Profilul
« Răspunde #10 : Mai 08, 2007, 21:40:53 »

Precalcularea o poti face in 2 linii de cod:
Cod:
for(i = 1; i < N; i++)
    cnt[i] = cnt[i>>1]+(i&1);
unde cnt[ i ] = numarul de biti de 1 a lui i
Memorat
peanutz
Nu mai tace
*****

Karma: 10
Deconectat Deconectat

Mesaje: 296



Vezi Profilul
« Răspunde #11 : Mai 08, 2007, 21:54:43 »

A, precalculare in  program, gata, m-am prins, sorry Smile

Later edit: wow, chestia chiar merge si e tare, merci mult Very Happy

Nu vad ce gresesc... cat va da pe testele

test1
Cod:
6 10
1 2
2 3
1 3
6 1
6 2
6 5
4 5
4 6
3 4
2 4

test2
Cod:
5 9
1 2
2 3
3 4
4 5
5 1
2 4
2 5
1 4
1 3

test3
Cod:
14 20
1 2
1 3
1 4
3 5
3 4
2 3
9 5
5 6
9 6
6 7
7 9
10 9
7 10
11 12
12 14
1 13
13 2
14 13
14 12
« Ultima modificare: Mai 09, 2007, 08:31:19 de către Andrei Homorodean » Memorat

....staind....
pauldb
Nu mai tace
*****

Karma: 821
Deconectat Deconectat

Mesaje: 1.901



Vezi Profilul
« Răspunde #12 : Mai 09, 2007, 08:46:36 »

Nu era bun executabilul cu care am rulat:

5
7
6 [Pe testul corectat]
« Ultima modificare: Mai 09, 2007, 10:29:59 de către Paul-Dan Baltescu » Memorat

Am zis Mr. Green
peanutz
Nu mai tace
*****

Karma: 10
Deconectat Deconectat

Mesaje: 296



Vezi Profilul
« Răspunde #13 : Mai 09, 2007, 09:02:00 »

si pe testul 1
Cod:
6 10
1 2
2 3
1 3
6 1
6 2
6 5
4 5
4 6
3 4
2 4

ce alte triunghiuri mai sunt inafara de urmatoarele:

2 4 6
1 2 3
2 3 4
4 5 6
1 2 6

Cred ca ti-a dat gresit(sau numeri fiecare triunghi de 3 ori...)


Testul 3 e gresit ca se repeta 12 14, daca stergeti ultima muchie si puneti m 19, ar trebui sa dea 6, nu?
« Ultima modificare: Mai 09, 2007, 10:34:36 de către Andrei Homorodean » Memorat

....staind....
vlasceanu
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 5



Vezi Profilul
« Răspunde #14 : Martie 25, 2009, 00:23:04 »

Daca ati folosit matrice ati reusit  sa aveti memorie pentru ultimul test? daca da imi spuneti si voi cum ati facut ca eu nu reusesc deloc sa intru in ultimu test prin metoda asta.
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

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