Что выведет программа?
Anonymous Quiz
2%
201
29%
Порядок не определен, implementation defined
15%
012
4%
021
38%
210
13%
Неопределенное поведение
Возможно ли перемножить две матрицы быстрее чем за O(n^3)?
Anonymous Quiz
69%
Возможно
31%
Невозможно
Что выведет программа?
Anonymous Quiz
10%
Не скомпилируется
16%
0
41%
1
33%
Неопределенное поведение
Если каждому ребру графа поставлено в соответствие некоторое число, то этот граф называется?
Anonymous Quiz
8%
планарным
72%
взвешенным
8%
полным
13%
связным
Что выведет программа?
Anonymous Quiz
13%
Не скомпилируется, так как exception принимается по значению
45%
G
9%
SG
30%
S
4%
Неопределенное поведение
☝️Объяснение:
Мы кидаем `SpecialException`. Оно унаследовано от `GeneralException`, но принимается по значению, поэтому динамический тип e будет `GeneralException`, не `SpecialException`. В С++ community такой эффект называют ещё `slicing`.
Мы должны принимать `exception` по ссылке `catch (GeneralException& e)`, тогда динамический тип будет `SpecialException`, и программа выведет `S`.
Мы кидаем `SpecialException`. Оно унаследовано от `GeneralException`, но принимается по значению, поэтому динамический тип e будет `GeneralException`, не `SpecialException`. В С++ community такой эффект называют ещё `slicing`.
Мы должны принимать `exception` по ссылке `catch (GeneralException& e)`, тогда динамический тип будет `SpecialException`, и программа выведет `S`.
Какой будет результат работы программы?
Anonymous Quiz
18%
ошибка в строке 1
24%
ошибка в строке 2
27%
145
22%
ошибка компиляции
9%
115
Какие методы сортировки имеют гарантированную сложность O(n logn) в худшем случае?
Anonymous Quiz
8%
сортировка пузырьком (BubbleSort)
35%
быстрая сортировка (QuickSort)
12%
сортировка Шелла (ShellSort)
12%
сортировка вставками (InsertionSort)
23%
сортировка слиянием (MergeSort)
9%
пирамидальная сортировка (HeapSort)
☝️Объяснение:
время выполнения быстрой сортировки сильно зависит от выбора разделяющего элемента.
В сети есть много задач предлагающих "заломать" сортировку при условии, что разделяющим элементом выбирался средний по индексу, то есть m = x[(l+r)/2].
На одной олимпиаде был даже скандал. Жюри разумно заметило, что тесты они имеют предлагать любые соответсвующие условиям и что участник сам виноват, надо было ставить m = x[l+random(r-l+1)]
Вопрос: https://proghub.dev/q/a9bb57
🔥Добавить свой вопрос
время выполнения быстрой сортировки сильно зависит от выбора разделяющего элемента.
В сети есть много задач предлагающих "заломать" сортировку при условии, что разделяющим элементом выбирался средний по индексу, то есть m = x[(l+r)/2].
На одной олимпиаде был даже скандал. Жюри разумно заметило, что тесты они имеют предлагать любые соответсвующие условиям и что участник сам виноват, надо было ставить m = x[l+random(r-l+1)]
Вопрос: https://proghub.dev/q/a9bb57
🔥Добавить свой вопрос
Какая ошибка произойдёт в этом коде?
Anonymous Quiz
28%
Здесь нет ошибок
21%
Ошибка компиляции
18%
Ошибка при компоновке
33%
Ошибка нехватки памяти
☝️Объяснение:
В цикле
for (int i=Xmin; i < Xmax; i += 0.001)
переменная i имеет тип int, поэтому добавление к переменной (i += 0.001) будет отбрасываться.
Цикл получается не просто бесконечный (никогда не будет i == Xmax).
Массивы будут наполняться до тех пор, пока память компьютера не закончится.
В цикле
for (int i=Xmin; i < Xmax; i += 0.001)
переменная i имеет тип int, поэтому добавление к переменной (i += 0.001) будет отбрасываться.
Цикл получается не просто бесконечный (никогда не будет i == Xmax).
Массивы будут наполняться до тех пор, пока память компьютера не закончится.
Что выведет данная программа (-std=c++11):
Anonymous Quiz
13%
14132332
3%
32
43%
13142332
10%
Ошибка выполнения
11%
32231413
20%
Ошибка компиляции