Új hozzászólás Aktív témák
-
dabadab
titán
válasz m.zmrzlina #3927 üzenetére
1. Túlbonyolítod.
2. Hibás az algoritmus. Képzeld el pl. a következő mátrixot, ebben jó esetben is csak a jó elemek negyedét találja meg (ha meg pl. középen kezd, akkor semennyit):0001000
0001000
0001000
1111111
0001000
0001000
0001000Simán végig kell menni az egészen, a szélek lekezelése meg tényleg nem egy nagy vaszisztdasz, pszeduokódban:
for ( x = X_MIN ; x <= X_MAX ; x++ )
for ( y = Y_MIN ; y <= Y_MAX ; y++ )
if ( isGood(x,y) && isGood(x+1,y) && isGood(x-1,y) && isGood(x,y+1) && isGood(x,y-1) )
store(x,y);
bool isGood(x,y)
if ( x < X_MIN || x > X_MAX || y < Y_MIN || y > Y_MAX )
return true;
return ( matrix[x][y] == 0 )[ Szerkesztve ]
DRM is theft
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Vodafone mobilszolgáltatások
- Videós, mozgóképes topik
- Akciófigyelő - Epic Store ajándékozás 7. nap: Control
- Azonnali alaplapos kérdések órája
- Autós topik
- Egy korszak vége
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
- exHWSW - Értünk mindenhez IS
- Okos Otthon / Smart Home
- iPhone topik
- További aktív témák...
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest