Тема: Массивы
Показать сообщение отдельно
Старый 02.03.2009, 21:01   #61
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Массивы

скорее всего у тебя двумерный массив. в таком случае можно воспользоваться проекцией на одномерный. как то так:

size_x - размер поля по горизонтали
size_y - размер поля по вертикали
a - массив

n = size_x * size_y
for i = 1 to n
 cnt = 0
 x = i mod size_x
 y = i / size_x

 if a(x,y)<>0
  for j = i+1 to n
   x2 = j mod size_x
   y2 = j / size_x

   if a(x,y) = a(x2,y2) then cnt = cnt +1
  next
 endif

 if cnt >= 3
  val = a(x,y)
  for j=n to i step -1
   x2 = j mod size_x
   y2 = j / size_x

   if a(x2,y2) = a(x,y) then a(x2,y2)=0
  next
 endif

next
(Offline)
 
Ответить с цитированием