Собственно текст:
Следующий фрагмент программы записывает в переменную Max максимальный элемент в двухмерном массиве Dist размера NxN, заполненном целыми неотрицательными числами:
Код:
Max := 0;
for i := 1 to N do
for j := 1 to N do
if Dist[i,j] > Max then Max := Dist[i,j];
На очень медленном компьютере эта программа при N=1000 работала 5 секунд. Оцените время работы этой программы на том же компьютере при N=2000
Варианты ответов: 1) 10 сек. 2) 20 сек. 3) 30 сек. 4) 40 сек.
Хотелось бы увидеть ваш вариант ответов с аргумментированием
При N=1000 имеем 1 000*1 000 = 1 000 000 элементов массива для проверки. При N = 2000 -> 2 000*2 000 = 4 000 000, т.е. в 4 раза больше. Зависимость квадратичная, следовательно при увеличении N в Y раз (в данном варианте задачи Y=2) затраты времени будут увеличены в Y^2 раз.
Отсюда получаем 5*2^2=20 сек. Вариант ответа 2