Для нахождения общих делителей всех элементов массива можно использовать следующий алгоритм:
1. Найти наименьший элемент в массиве.
2. Найти все делители этого числа.
3. Перебирать делители от 1 до наименьшего элемента.
4. Проверять, являются ли все элементы массива кратны текущему делителю.
5. Если да, добавить делитель в общий список делителей.
Пример кода на Python:
```python
from math import gcd
def common_divisors(arr):
min_num = min(arr)
divisors = []
for i in range(1, min_num + 1):
if all(num % i == 0 for num in arr):
divisors.append(i)
return divisors
arr = [12, 24, 36]
result = common_divisors(arr)
print(result)
```
Этот код находит общие делители всех элементов массива за более эффективное время, так как использует общие свойства чисел из массива.