2042 год уже пять лет с момента, как человечество вернуло себе контроль над машинами. лейтенант отдела по борьбе с киберугрозой заподозрил, что кто-то из трёх его виртуальных заражён вирусом и из-за этого выдаёт только ложные сообщения. возможно, атаке подверглись сразу несколько . для проверки лейтенант поручил каждому из трёх проверить все файлы у остальных. вот какие доклады были в итоге получены лейтенантом:
r49x: k9q1 заражён.
k9q1: hno3 заражён.
hno3: r49x и k9q1 заражены.
лейтенанту определить, кому можно доверять, а кому — нет.
1. Оголосити масиви А, В, С.
2. Ввести елементи масиву А.
3. Ввести елементи масиву В.
4. Створити пустий масив D.
5. Перевірити наявність елементів масиву А в масиві В:
- Для кожного елемента a в масиві А:
- Якщо a відсутній в масиві В, додати його до масиву D.
6. Перевірити наявність елементів масиву В в масиві А:
- Для кожного елемента b в масиві В:
- Якщо b відсутній в масиві А, додати його до масиву D.
7. Видалити парні елементи з масиву В:
- Для кожного елемента b в масиві В:
- Якщо b є парним числом, видалити його з масиву В.
8. Впорядкувати масиви А, В та D за зростанням.
9. Скопіювати масив D в масив C.
10. Вивести масив А.
11. Вивести масив В.
12. Вивести масив С.
END
Відповідь:
Створення та реалізація алгоритму відповідно до свого призначення визначає його складність. Проте не існує інтегрованого показника складності алгоритму, хоча існує спеціальний навіть розділ – метрична теорія алгоритмів, що займається саме проблемами складності. Інтуїтивно можна виділити такі основні складові складності алгоритму:
1. Логічна складність - кількість людино-місяців, витрачених на створення алгоритму.
2. Статична складність - довжина опису алгоритмів (кількість операторів).
3. Тимчасова складність - час виконання алгоритму.
4. Ємнісна складність - кількість умовних одиниць пам'яті, необхідних для роботи алгоритму.
Головною метою теорії складності є забезпечення механізму класифікації алгоритмів за складністю. Складність алгоритму дозволяє визначитися з вибором ефективного алгоритму серед існуючих, що побудовані для розв’язання конкретної проблеми. А саме вибір серед уже існуючих алгоритмів дозволяє не розглядати логічну та статичну складність, а оцінювати ті ресурси, що знадобляться під час реалізації обраних алгоритмів.
Пояснення: