Премини към съдържанието

Slav Atanasov

Потребител
  • Публикации

    1
  • Регистрация

  • Последно онлайн

Харесвания

0 Неутрална репутация

Всичко за Slav Atanasov

  • Титла
    Новобранец

Последни посетители

239 прегледа на профила
  1. Здравейте! Нужна ми е помощ за следната задача: Дадена е двумерна мрежа от клетки, всяка от които е празна ( съдържа 0) или запълнена ( 1). Запълнените клетки , които имат обща стена (са съседни в вертикално или хоризонтално направление) образуват област. Да се състави програма,която въвежда двумерен масив, представляващ такава мрежа, след което го извежда с маркираните области( всяка клетка от дадена област се маркира с определен символ, избран за тази област,като символите са различни за всяка област). До колкото разбирам трябва да имаме следния резултата 011 0@@ 000 ===> 000 110 **0 До колкото разбирам чрез този код: void markIsland(int arr[][5], int i, int j, int m, int n) { arr[j] = -1; if(i-1 >= 0) { // (i-1, j-1) if(j-1 >= 0 && arr[i-1][j-1] == 1) markIsland(arr, i-1, j-1, m, n); // (i-1, j) if(arr[i-1][j] == 1) markIsland(arr, i-1, j, m, n); // (i-1, j+1) if(j+1 < n && arr[i-1][j+1] == 1) markIsland(arr, i-1, j+1, m, n); } if(i+1 < m) { // (i+1, j-1) if(j-1 >= 0 && arr[i+1][j-1] == 1) markIsland(arr, i+1, j-1, m, n); // (i+1, j) if(arr[i+1][j] == 1) markIsland(arr, i+1, j, m, n); // (i+1, j+1) if(j+1 < n && arr[i+1][j+1] == 1) markIsland(arr, i+1, j+1, m, n); } // (i, j-1) if(j-1 >= 0 && arr[j-1] == 1) markIsland(arr, i, j-1, m, n); // (i, j+1) if(j+1 < n && arr[j+1] == 1) markIsland(arr, i, j+1, m, n); } можем да определим кои са островите , но как може да стане подмяната на символите ?
  • Разглеждащи това в момента   0 потребители

    Няма регистрирани потребители разглеждащи тази страница.

×

Информация

Поставихме бисквитки на устройството ви за най-добро потребителско изживяване. Можете да промените настройките си за бисквитки, или в противен случай приемаме, че сте съгласни с нашите условия за ползване.