skat
Профи
(879)
1 месяц назад
1. Из представленных алгоритмов наиболее быстрым является второй алгоритм с временной сложностью T2(N) = N2. Поэтому Пете стоит выбрать второй алгоритм.
2. Самым первым этапом разработки программы должна быть постановка задачи. Остальные этапы разработки могут выполняться в различном порядке в зависимости от требований и особенностей конкретной задачи.
3. Функция f(n) складывает все цифры числа n. Для числа 12345 сумма его цифр равна 15, поэтому f(12345) = 15.
4. Программа проходит по списку A и прибавляет к каждому элементу сумму первого и последнего элементов списка, а также единицу и пять. После раскрытия скобок и упрощения подобных слагаемых получим выражение:
(N-2) * A[i] + A[0] + A[N-1] + 6
Таким образом, число операций сложения равно N - 2.
5. Функция g(x, y, n) в цикле for выводит на экран строку, состоящую из символов x и y, разделенных знаком '+'. В данном случае x = '*', y = '+' и n = 5, поэтому программа выведет пять строк, в каждой из которых будет один символ '+'. Итого программа напечатает 5 символов '+'.
1.Петя выбирает один из четырех алгоритмов для решения некоторой задачи с массивом из N элементов. Временная сложность первого алгоритма определяется функцией T1(N) = 2N3, временная сложность второго определяется функцией T2(N) = N2, временная сложность третьего определяется функцией T3(N) = 13N , временная сложность четвертого определяется функцией T4(N) = N2 + N.
Какой из алгоритмов стоит выбрать Пете, если его интересует наиболее быстрый алгоритм для задач, в которых N больше 1000?
первый? второй? третий? четвертый?
2.Какой из перечисленных в списке этапов разработки программы должен быть самым первым?
1 Создание программного кода
2 Разработка алгоритма и способа представления данных
3 Отладка
4 Постановка задачи
5 Тестирование
3.Программист написал такую функцию:
def f(n):
ans = 0
while n > 0:
ans = ans + n % 10
n = n // 10
return ans
Чему равно f(12345)?
4.Дан список A, содержащий N элементов. Определите число операций сложения, которые выполняются при работе следующей программы:
tmp = A[0] + A[N - 1] + 1
for i in range (1, N) :
A[il = Ali - 1] + tmp + 5
Для обозначения операции умножения используйте символ *. Ответ максимально упростите, раскрыв скобки и приведя подобные слагаемые.
5 Программист написал функцию g:
def g(x, y, n) :
for i in range (n) :
print (x, '+', y)
А затем вызвал ее:
g ('*', '+', 5)
Сколько знаков ‘+’ напечатает его программа?