Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.10;
Скачать: CL | DM;

Вниз

Алгоритм вот надо :)   Найти похожие ветки 

 
X-shadow ©   (2003-07-30 20:56) [0]

есть шахмотная доска
8/8
из нее выбивают клетки
нужно узнать на сколько частей она развалится при этом
ну допустим ты выбил в середине 2 клетки то она не развалися.а если допустим вокруг угла то развалится на 2
нужно вычислить алгоритм


 
jack128 ©   (2003-07-30 21:09) [1]

ищешь рядом с вибитой ячейкой другие выбитые, рябом с эти ячейками другие и так далее...если в конце концов найдешь 2 ячейки у края или наткнешься на ячейку каторую уже тестил, то расколится..
Поищи реализацию волнового алгоритма - это он! в данном случаи доступный путь - это путь по выбирым ячейкам(клеткам)


 
Leran2003   (2003-07-30 21:29) [2]

Проще будет сделать так (просматривать по невыбитым)...

Матрица 8х8 из целых чисел: 1-нормальная ячейка, 0-выбитая

Count=0

1) Ищем первую невыбитую ячейку, рекурсивно находим все соседние с нею невыбитые ячейки, присваиваем им 2... От соседних невыбитых тоже самое, таким образом мы покроем один блок... Count++;

2) Ищем следующую невыбитую ячейку (которая=1), рекурсивно находим все соседние с нею невыбитые ячейки, присваиваем им 2... От соседних невыбитых тоже самое, таким образом мы покроем еще один блок... Count++;

Если нет ячеек=1 то WriteLn(Count); END.
Иначе Goto 2;


 
X-shadow ©   (2003-07-31 20:47) [3]

double f(double base, unsigned exponent)
{
if (exponent==1) return base;
unsigned t=exponent>>1;
double z=f(base*base,t);
if (exponent & 1) z*=base;
return z;
}

void main()
{
double x=1.000000007;
unsigned y=4293656784;
printf("%f\n",f(x,y));
}


 
ЮЮ ©   (2003-08-01 05:07) [4]

Рекурсивно возводить в степень ? Умножение в столбик :-)
Оснокомься с функцией Power!
x^y = exp(y*ln(x))



Страницы: 1 вся ветка

Текущий архив: 2004.02.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.021 c
1-29381
denisWW
2004-01-28 00:23
2004.02.10
Уважаемые Дельфисты - проблемма с потоками


1-29459
Erik
2004-01-30 12:35
2004.02.10
Access violation при освобождении Variant.


1-29404
axx
2004-01-31 13:28
2004.02.10
Вопрос по VCLZip


6-29493
Andry
2003-12-08 17:19
2004.02.10
Как определить узлы в сети ?


1-29443
sergg
2004-01-30 15:36
2004.02.10
Передача параметра в: const AFilter: string =