Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: 218 ZParcurgere  (Citit de 7442 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
ditzone
Vizitator
« : Martie 30, 2006, 20:26:56 »

Aici puteţi discuta despre problema ZParcurgere.
Memorat
vladcyb1
Vorbaret
****

Karma: 33
Deconectat Deconectat

Mesaje: 166



Vezi Profilul
« Răspunde #1 : Martie 30, 2006, 20:42:44 »

Care e faza cu testele 5, 6 ? Nu le am luat nici in concurs..nici in arhiva acuma... Confused   d'oh!
Memorat

Vlad Berteanu
alexthero
De-al casei
***

Karma: 121
Deconectat Deconectat

Mesaje: 129



Vezi Profilul
« Răspunde #2 : Martie 30, 2006, 22:34:18 »

Cred ca x si y depasesc 2^n pe testele 5 si 6.. am trimis o rezolvare care face verificarea datelor si intra in ciclu infinit daca ceva nu e in regula.

Ce trebuie afisat in cazul in care x-ul sau y-ul depaseste limita?
Memorat

Tine minte ca mintea conduce pumnu, nu invers
ditzone
Vizitator
« Răspunde #3 : Martie 30, 2006, 22:42:38 »

Nu terbuie afisat nimic... testele 5 si 6 s-au schimbat si s-a reevaluat Smile
Memorat
cristy
De-al casei
***

Karma: 2
Deconectat Deconectat

Mesaje: 136



Vezi Profilul
« Răspunde #4 : Aprilie 05, 2006, 12:43:20 »

nu imi ies mai mult de 20 de pct pe problema asta... Brick wall....asa arata parcurgerea pt n=4?

Cod:
1	2	5	6	17	18	21	22	65	66	69	70	73	74	77	78
3 4 7 8 19 20 23 24 67 68 71 72 75 76 79 80
9 10 13 14 25 26 29 30 81 82 85 86 89 90 93 94
11 12 15 16 27 28 31 32 83 84 87 88 91 92 95 96
33 34 37 38 49 50 53 54 97 98 101 102 105 106 109 110
35 36 39 40 51 52 55 56 99 100 103 104 107 108 111 112
41 42 45 46 57 58 61 62 113 114 117 118 121 122 125 126
43 44 47 48 59 60 63 64 115 116 119 120 123 124 127 128
129 130 133 134 145 146 149 150 197 198 201 202 213 214 217 218
131 132 135 136 147 148 151 152 199 200 203 204 215 216 219 220
137 138 141 142 153 154 157 158 205 206 209 210 221 222 225 226
139 140 143 144 155 156 159 160 207 208 211 212 223 224 227 228
161 162 165 166 177 178 181 182 229 230 233 234 245 246 249 250
163 164 167 168 179 180 183 184 231 232 235 236 247 248 251 252
169 170 173 174 185 186 189 190 237 238 241 242 253 254 257 258
171 172 175 176 187 188 191 192 239 240 243 244 255 256 259 260
Foloseste  "code" ca sa se vada mai bine matricea...
« Ultima modificare: Aprilie 05, 2006, 13:01:38 de către ditzone » Memorat

... lipsa de inspiratie ...
ditzone
Vizitator
« Răspunde #5 : Aprilie 05, 2006, 12:49:11 »

Ceva nu e in regula la matricea aia... fiind 2n*2n (n=4) trebuie sa ai 256 de valori .. la tine apare si un 260 pe-acolo... si lipsesc 193-196
« Ultima modificare: Aprilie 05, 2006, 13:26:57 de către ditzone » Memorat
cristy
De-al casei
***

Karma: 2
Deconectat Deconectat

Mesaje: 136



Vezi Profilul
« Răspunde #6 : Aprilie 05, 2006, 13:17:46 »

scuze...ai dreptate...am gresit la copiere acolo...dar asta e ideea?...eu am facut 20 de puncte si restul WA...
Memorat

... lipsa de inspiratie ...
VladS
Vizitator
« Răspunde #7 : Aprilie 05, 2006, 13:30:20 »

Vezi si tu daca iti merge pe testele de aici
http://www.topcoder.com/stat?c=problem_statement&pm=4808&rd=7999
Memorat
svalentin
Nu mai tace
*****

Karma: 88
Deconectat Deconectat

Mesaje: 704



Vezi Profilul
« Răspunde #8 : Aprilie 05, 2006, 14:37:01 »

insa iti trebuie user pe topcoder pt alea..
Memorat
cristy
De-al casei
***

Karma: 2
Deconectat Deconectat

Mesaje: 136



Vezi Profilul
« Răspunde #9 : Aprilie 05, 2006, 20:59:36 »

ms...acuma ma apuc sa bibilesc codul...am gasit cateva greseli...
Memorat

... lipsa de inspiratie ...
cos_min
Nu mai tace
*****

Karma: 48
Deconectat Deconectat

Mesaje: 493


live


Vezi Profilul
« Răspunde #10 : Iulie 16, 2006, 19:32:41 »

nu inteleg de ce iau numai 20 de pcte   Fighting ... testele de pe topcoder imi merg ...

voua cat va da pe :

7 2
4 5
21 3
Memorat

vid...
tm_radu
De-al casei
***

Karma: 16
Deconectat Deconectat

Mesaje: 140



Vezi Profilul
« Răspunde #11 : Iulie 16, 2006, 19:47:33 »

mie imi da :

Cod:
27
549
Memorat

Daca nu merge o preblema, depaneaz-o, si abia apoi arunci calculatoru pe geam
AlexandruValeanu
Vorbaret
****

Karma: 29
Deconectat Deconectat

Mesaje: 167



Vezi Profilul
« Răspunde #12 : Februarie 20, 2013, 11:12:55 »

Se poate raspunde in O(1) pe intrebare?
Memorat
deneo
Vorbaret
****

Karma: 185
Deconectat Deconectat

Mesaje: 160



Vezi Profilul
« Răspunde #13 : Februarie 20, 2013, 12:18:48 »

Nu
Memorat
cont_teste
Strain


Karma: -2
Deconectat Deconectat

Mesaje: 10



Vezi Profilul
« Răspunde #14 : Martie 25, 2013, 17:09:01 »

Aceasta este o problema clasica de DEI.
Memorat
breahnadavid
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 15



Vezi Profilul
« Răspunde #15 : Iulie 14, 2014, 11:29:38 »

ma ajuta si pe mine cnv ??
am facut un fel de divide et impera.. dar nu trec de 70 pc.
tu TLE..
si nu-mi dau seama ce as putea face ?
unde pierd puncte, ,

Cod:
#include<iostream>
#include<fstream>
#include<math.h>

using namespace std;

ifstream f("z.in");
ofstream g("z.out");

int x,y,t[10000][10000],i,j,k,n;
int q;
void parcurg(int i,int j,int x,int y)
        {
        if(i==x&&j==y)t[i][j]=++q;
        else
                {
                parcurg(i,j,(x+i-1)/2,(y+j-1)/2);
                parcurg(i,(y+j-1)/2+1,(x+i-1)/2,y);
                parcurg((x+i-1)/2+1,j,x,(y+j-1)/2);
                parcurg((x+i-1)/2+1,(y+j-1)/2+1,x,y);
                }
        }
int main()
{
f>>n>>k;
q=0;
parcurg(1,1,int(pow(2,n)),int(pow(2,n)));
while(k>0)
        {
        f>>x>>y;
        g<<t[x][y]<<'\n';
        k--;
        }
g.close();
return 0;
}


va rog mult cineva > !? !?  Weightlift Fighting Fighting Brick wall Brick wall
Memorat
harababurel
Client obisnuit
**

Karma: 23
Deconectat Deconectat

Mesaje: 62



Vezi Profilul
« Răspunde #16 : Iulie 16, 2014, 06:50:14 »

Incearca sa renunti la cateva apeluri ale functiei.

De fiecare data cand faci o impartire in 4 cadrane, in loc sa repeti impartirea in mod succesiv pentru fiecare dintre ele (complexitate pentry query O(2^n)), poti sa reapelezi doar pentru cadranul in care se afla elementul cautat (complexitate O(log (2^n)) = O(n * log 2) = O(n)).

Observa ca fiecare cadran initial contine un interval compact de valori. Pentru cazul din exemplu: [1, 4], [5, 8], [9, 12], [13, 16].
Daca ai de cautat un element care se afla in cadranul 3, poti sari peste 2 cadrane (adica 8 valori), fara sa le mai parcurgi, si iti ramane sa cauti doar in intervalul/cadranul imediat urmator.

Pentru simplitate, considera ca ai scazut valoarea 8 din fiecare element al cadranului ales. in modul asta, cadranul o sa obtina exact structura initiala a tablei (valoarea 1 in coltul stanga-sus, 2^dim in coltul dreapta-jos, si aceeasi ordine de numerotare), ceea ce iti simplifica impartirea urmatoare.

Solutia o sa fie suma tuturor valorilor scazute astfel, pana in punctul in care ajungi la un cadran de dimensiune 1.

Am rezolvat problema acum un an; daca am omis sau gresit ceva, o sa corectez.
Memorat
breahnadavid
Strain


Karma: -1
Deconectat Deconectat

Mesaje: 15



Vezi Profilul
« Răspunde #17 : Iulie 16, 2014, 11:19:09 »

Mersi, mult, am incercat s-o fac,
Dar nu mi-a reusit ti-am trimis un PM, daca poti sa ma ajuti .. ?
As fi recunoscator.  sad
Memorat
harababurel
Client obisnuit
**

Karma: 23
Deconectat Deconectat

Mesaje: 62



Vezi Profilul
« Răspunde #18 : Iulie 16, 2014, 11:28:24 »

Ti-am trimis un PM cu explicatiile din sursa mea.
Sper sa te ajute.
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

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