2. Даны два списка целых чисел A1, ..., AN и B1, ..., BN. Cлить эти списки в один, исключить все повторения чисел и упорядочить их по возрастанию.
3. Для множества точек плоскости p1(X1,Y1), p2(X2,Y2), ..., pN(Xn,Yn) найти диаметр и центр минимальной описанной окружности.
4. В списке символов S1, S2, ..., SN найти первое и последнее вхождения указанного символа и исключить все символы между ними.
5. В списке символов S1, S2, ..., SN исключить все последовательности указанного вида, например [a,b,c,d].
6. В списке символов S1, S2, ..., SN найти длину наибольшей последовательности, построенной повторением одного и того же символа. Вывести эту последовательность.
7. В списке символов S1, S2, ..., SN каждую указанную последовательность символов заменить нв другую указанную последовательность.
8. Из списка символов S1, S2, ..., SN исключить все символы между круглыми скобками. Сами скобки тоже должны быть отброшены. Однако, если внутри круглых скобок есть другая пара круглых скобок, то она и содержащиеся в ней символы должны быть сохранены. И так далее рекурсивно. Например, последовательность "ab(c(d(ef(gh)z)fg)r)dd(ik(l))" преобразуется в "ab(d(gh)fg)dd(l)".
9. В списке символов S1, S2, ..., SN подсчитать количество букв в последнем слове, если разделителем между словами является один или несколько пробелов.
10. В списке символов S1, S2, ..., SN подсчитать количество слов, если разделителем между словами является один или несколько пробелов.
11. Вдоль доски расположены лунки и в каждой лунке лежит шар белого или черного цвета. Одним ходом разрешается менять местами два соседних шара. Добиться того, чтобы в лунках сначала лежали белые, а потом черные шары.
12. В списке символов S1, S2, ..., SN найти число слов, начинающихся с заданной буквы, если разделителем между словами является один или несколько пробелов.
13. В списке символов S1, S2, ..., SN найти длину самого короткого слова, если разделителем между словами является один или несколько пробелов. Вывести это слово.
14. В списке символов S1, S2, ..., SN найти все вхождения указанного слова, если разделителем между словами является один или несколько пробелов.
15. Вдоль доски расположены лунки и в каждой лунке лежит шар белого, синего или красного цвета. Одним ходом разрешается менять местами два соседних шара. Добиться того, чтобы в лунках сначала лежали белые, затем красные, а потом синие шары.
16. В списке символов найти число слов с одинаковыми первой и поледней буквами, если разделителем между словами является один или несколько пробелов. Вывести самое длинное такое слово.
17. В списке символов S1, S2, ..., SN найти среднюю длину слов, если разделителем между словами является один или несколько пробелов. Вывести все слова, имеющие эту длину.
18. В списке символов S1, S2, ..., SТ найти длину самого длинного слова, если разделителем между словами является один или несколько пробелов. Вывести это слово.
19. Преобразовать список целых чисел A1, А2, ..., AN следующим образом:
21. Из списка целых чисел A1, А2, ..., AN исключить все элементы, совпадающие со значением [(A_max + A_min + A_ср) / 3].
22. Из списка целых чисел исключить все члены, равные целой части от среднего арифметического. Результирующий список представить в упорядоченном виде.
23. Список целых чисел A1, A2, ..., AN оставить без именений, если он упорядочен по возрастанию или убыванию. В противном случае:
25. Даны два списка целых чисел A1, ..., AN и B1,...,BN найти
27. В квадрате размером 3х3 расставить числа 1, 2, 3, 4, 5, 6, 7, 8 и 9 так, чтобы суммы чисел, стоящих в каждом вертикальном ряду, в каждом горизонтальном ряду и на каждой главной диагонали были равны.
28. Площадь комнаты разделена на шесть прямоугольников, пять из них заняты
мебелью, шестой - свободен. Переставить мебель так, чтобы шкаф и кресло поменялись
местами, при этом никакие два предмета не могут размещаться одновременно
на одном прямоугольнике. Пример начальной расстановки:
Стол | Стул | Шкаф |
Стул | Кресло |
29. Решить упрощенный вариант головоломки "пятнашки" (поле размером 3х3, номер старшей фишки - 8) для указываемой начальной позиции. (Литература: Н.Нильсон. Принципы искусственного интеллекта. - М.: Радио и связь, 1985.)
30. Для N произвольно заданных костяшек домино необходимо найти все возможные цепочки из этих костяшек длиной N. Если таких цепочек нет, то выдать максимально длинную возможную цепочку.
31. Для двух произвольно введеных строк символов определить является ли одна из них инвертированной копией другой без учеа пробелов.
32. Для двух произвольно введеных строк символов определить может ли быть одна строка получена из другой перестановкой символов (без учета пробелов).
33. Для произвольно введеной последовательности целых чисел определить (и напечатать) максимально длинную подпоследовательность чисел, расположенных в возрастающем порядке.
34. Для произвольно введеной последовательности символов определить содержатся ли в ней все символы указанного слова в той же последовательности, что и в самом слове. Например: после-довательность "development" содержит в себе символы слова "dont".
35. Для двух произвольно введеных последовательностей символов найти слово наибольшей длины, состоящее из символов, имеющихся в каждой последовательности одновременно и встречающихся в них (последовательностях) в том же порядке, что и в слове.
36. Написать программу, реализующую беспроигрышную стратегию игры "в крестики-нолики" на поле 3х3. Организовать вывод текущей позиции после каждого хода программы и человека.
37. Для списка пар целых чисел р1(Х1,Y1), p2(X2,Y2), ..., pN(XN,YN), рассматриваемых как координаты точек на плоскости, найти и вывести все прямоугольники и квадраты, все четыре вершины которых располагаются в этих точках. Определить фигуру наибольшей площади.
38. Написать программу шифрации последовательности А нулей и единиц в последовательность В также нулей и единиц, реализующую следующий алгоритм шифрации:
39. Написать программу расстановки восьми ферзей на стандартной шахматной доске так, чтобы они не били друг друга. Перечислить все такие расстановки.
40. Написать программу отыскания кратчайшего пути коня из позиции a1 на стандартной шахматной доске в произвольную позицию.
41. Написать программу отыскания кратчайшего пути коня из позиции a1 на стандартной шахматной доске в произвольную позицию и обратно, причем позиции, пройденные на прямом пути, запрещены для посещения на обратном.
42. Написать программу расстановки минимального количества ферзей на стандартной шахматной доске так, чтобы:
44. Написать программу решения "японской" головоломки (кроссворда) для сетки произвольного размера. Подготовить исходные данные для тестов размером 8x8, 8x16 и 16x16. Задание уточнить у преподавателя.
45. Написать программу трансляции арифметических выражений над натуральными числами из канонической (в виде структур) для языка Пролог формы в общепринятую (инфиксную). Например:
46. Написать программу трансляции арифметических выражений над натуральными числами из канонической (в виде структур) для языка Пролог формы в постфиксную форму, используемую в компиляторах языков программирования. Например:
47. Написать программу трансляции арифметических выражений над натуральными числами из общепринятой (инфиксной) формы в каноническую (в виде структур) для языка Пролог форму. Например:
48. Написать программу трансляции арифметических выражений над натуральными числами из общепринятой (инфиксной) формы в в постфиксную форму, используемую в компиляторах языков программирования. Например:
49. Написать программу вычисления арифметических выражений над действительными числами, представленных в постфиксной форме записи.
50. Написать программу символьного дифференцирования арифметических выражений, представленных в канонической (в виде структур) для языка Пролог форме. При этом единственная переменная (по которой производится дифференцирование) обозначается буквой x, а константы - всеми иными строчными (маленькими) буквами.
51. Написать программу символьного дифференцирования арифметических выражений, представленных в общепринятой (инфиксной) форме. При этом единственная переменная (по которой производится дифференцирование) обозначается буквой x, а константы - всеми иными строчными (маленькими) буквами.
52. Написать универсальную программу решения задач, подобных сформулированной
далее.
В приведенных ниже алгебраических выражениях цифры в числах заменены буквами,
а знак арифметической операции - знаком '?'. Необходимо найти подстановку
цифр вместо букв и знака арифметической операции вместо '?' такую, которая
превращала бы выражения в тождества.
53. Дано алгебраическое уравнение над целыми числами, в котором знаки
операций (+, -, *, /) заменены буквами (например, Z, Y, X, ...). Написать
универсальную программу, отыскивающую подстановку для букв, превращающую
уравнение в тождество. Пример.
Уравнение: (3 Z 5) Y 12 = 27
Подстановка: Z = *, Y = +
54. Задача А.Эйнштейна.
Основные условия.
Написать универсальную программу решения этой и подобных ей задач.
Примечание: А.Эйнштейн полагал, что только 2% жителей земли способны
решить эту задачу.
Команды | Победы | Поражения | Ничьи | Забито мячей | Пропущено мячей | Очки |
A | W | I | N | |||
B | O | R | ||||
C | L | O | S | E | ||
D |