1.Легка
Алгоритм O(n) працює 3 секунди для n = 1 мільйон. Приблизно скільки він працюватиме для n = 2 мільйони?
- A3 секунди
- B12 секунд
- C6 секунд
- D9 секунд
2.Легка
Що означає f(n) = Θ(g(n))?
- Af завжди менша за g для кожного n, тож g обмежує її зверху, але ніколи знизу
- Bf зростає строго швидше, ніж g
- Cf зростає строго повільніше, ніж g
- Df зростає з тією самою швидкістю, що й g, обмежена зверху й знизу сталими кратними g
3.Легка
Яка часова складність сортування злиттям у найгіршому випадку?
- AO(log n)
- BO(n)
- CO(n log n)
- DO(n²)
4.Середня
Який розв'язок рекурентного співвідношення T(n) = 2T(n/2) + O(1)?
- AO(log n)
- BO(n²)
- CO(n log n)
- DO(n)
5.Середня
Динамічне програмування корисне, коли задача має:
- AОдин цикл
- BЛише випадкові вхідні дані
- CПерекривні підзадачі та оптимальну підструктуру
- DЖодних підзадач, тож її можна розв'язати за один крок
6.Середня
Яка часова складність стандартного алгоритму динамічного програмування для найдовшої спільної підпослідовності рядків довжиною m і n?
- AO(mn log n)
- BO(mn)
- CO(m + n)
- DO(2m+n)
7.Складна
Що треба зробити, щоб показати, що нова задача X є NP-складною?
- AПоказати, що X можна перевірити за поліноміальний час
- BЗвести X до відомої NP-складної задачі за поліноміальний час
- CЗвести відому NP-складну задачу до X за поліноміальний час
- DПоказати, що X не має поліноміального алгоритму для малих вхідних даних
8.Складна
Яке визначення класу NP правильне?
- AЗадачі розпізнавання, відповіді «так» для яких можна перевірити за поліноміальний час за наявності сертифіката
- BЗадачі, що не є поліноміальними
- CЗадачі, які неможливо розв'язати за поліноміальний час
- DЗадачі, які не може розв'язати жоден алгоритм
Ключ відповідей
- 1. C · 6 секунд
- 2. D · f зростає з тією самою швидкістю, що й g, обмежена зверху й знизу сталими кратними g
- 3. C · O(n log n)
- 4. D · O(n)
- 5. C · Перекривні підзадачі та оптимальну підструктуру
- 6. B · O(mn)
- 7. C · Звести відому NP-складну задачу до X за поліноміальний час
- 8. A · Задачі розпізнавання, відповіді «так» для яких можна перевірити за поліноміальний час за наявності сертифіката
Повні покрокові розв’язки: тренуйте цю тему на examproblems.com.