Читаем 50 задач по началам программирования полностью

Максимальное значение R(3, 4)=16

48. DOI1995. Сравнение с образцом.

Образец имеет вид:

образец ::=

::= |

::= '['']' |

::= <символы>

Часть образца, заключенная в квадратные скобки показывает, что эту часть можно исключать. Таким образом, образец описывает множество строк. Образец всегда правильный. Например:

образец: [a[b]]c

описывает строки: a, ab, abc

Слово подходит под образец, если оно совпадает с одним из слов, описываемых образцом. Задача написать программу, которая по заданному образцу и слову печатает «НЕТ », если слово подходит под образец, и «ДА », если не подходит.

ПРИМЕР:

образец: [a[b]]c

слово: ab

ответ: ДА

49*. MARK1997. Уравнение f(X) = A

Решить уравнение вида f(X) = A, где A -строка из маленьких латинских букв, X -переменная строка, f -функция на строках, построенная с помощью операций * и + над строками. Операция + обозначает конкатенацию[6] строк. Например, adbc + 123 = abcd123. Результатом операции A * B будет стро ка, где после каждого символа A записана B; если A или B - пустые строки, то результат будет также пустой строкой. На пример, ab * cd = acdbcd. Операции выполняются в порядке их следования.

ТЕХНИЧЕСКОЕ ЗАДАНИЕ.

Программа должна запросить уравнение и напечатать одно из решений.

ПРИМЕР.

Уравнение: X * ab + c * X = aabcabcac

X = ac

В СЛЕДУЮЩЕЙ ЗАДАЧЕ ПРИМЕНЯЕТСЯ ПРИЁМ, КОТОРЫЙ НАЗЫВАЕТСЯ динамическим программированием ПРИЁМ ЗАКЛЮЧАЕТСЯ В ТОМ, ЧТО ЗАПОМИНАЮТ ТЕ ПРОМЕЖУТОЧНЫЕ РЕЗУЛЬТАТЫ, КОТОРЫЕ УЖЕ ВЫЧИСЛЕНЫ, А ПОТОМ ИСПОЛЬЗУЮТ ИХ.50*. MARK1997. Квадрат чисел

Задана квадратная таблица чисел. Размер таблицы нечётный. Движение начинается из центра. Двигаться можно вправо, влево, вверх и вниз. По ходу движения суммируются числа, записанные в клетках пути следования. Движение заканчивается на стороне квадрата.

Написать программу, которая сообщит минимальную сумму.

ТЕХНИЧЕСКОЕ ЗАДАНИЕ.

Заданный квадрат хранится в файле. Файл устроен следующим образом:

<Размер квадрата>

<Число> <Число> . . . <Число>

<Число> <Число> . . . <Число>

. . .

<Число> <Число> . . . <Число>

Все числа натуральные, не больше 200. Разделителями являются пробелы. Количество чисел в строке и количество строк совпадает с размером квадрата. Размер таблицы не больше 100.

Программа должна запросить имя файла с описанием квадрата и напечатать длину кратчайшего пути.

ПРИМЕР.

В файле:

5

20 13 23 12 18

6 14 3 17 11

21 2 1 4 25

7 15 5 16 10

22 8 19 9 24

Ответ: 23

<p>Тесты</p>

Метод использования тестов

Тесты надо проверять с первого до поседнего, подряд. Программа на каждом тесте должна работать не более указанного времени. Если время тестирования ограничено 0 секунд, это значит, что программа должна работать мгновенно.

Для каждого теста приведена его стоимость в процентах.

После проверки можно сложитьпроценты всех пройденных тестов и получить процент решения задачи.

По способам оценки можно выделить две основные группы тестов и по две разновидности в этих группах.

Первая группа. К первой группе можно отнести тесты, в которых сложность оценивается после тестирования программы (чаще нескольких программ). Тест считается более сложным, если программа (лучше несколько) проходит его с большими трудностями. Разновидности отличаются оценкой сложных и простых тестов.

Вторая группа. Тесты, ценность которых определяется до тестирования. Разновидности отличаются так же, как и в первой группе, но не по сложности, а по общности.

В этом задачнике тесты, очевидно, относятся ко второй группе. Наиболее общие тесты оценены выше.

1.Привет

ответ очевиден.

2.здравствуй

ответ очевиден.

3. Арифметика

а)14; б)5202;

в)12254; г)-19961;

д)4293; е)-3878;

ж)19812; з)-1031.

4. Вежливое приветствие

ответ очевиден.

5. Вежливое приветствие с восклицательным знаком

ответ очевиден.

6. Сумма

N

Вход

Выход

Ценность в процентах

0

15

12

27

1%

1

2

3

5

33%

2

1

-1

0

33%

3

-10

-20

-30

33%

Время работы программы 0 секунд.

7.Сумма чисел.

N

Вход

Выход

Ценность в процентах

0

15 12

15 + 12 = 27

1%

1

3 2

3 + 2 = 5

33%

2

-1 1

-1 + 1 = 0

33%

3

-100 -32

-100 + -32 = -132

33%

Время работы программы 0 секунд

8. Длинна строки

N

Вход

Выход

Ценность

в процентах

0

Мама мыла раму

В строке:

"Мама мыла раму" символов: 14

1%

1

Тест

В строке:

Тест символов: 4

25%

2

Test only

В строке:

Test only сим волов: 9

25%

3

В строке:

символов: 0

24%

4

1

В строке:

1 символов: 1

25%

Время работы программы 0 секунд

Пупышев Вячеслав Викторович

50 задач по началам программирования

в авторской редакции

корректор Е. Ф. Осипова

http://ulm.uni.udm.ru/~pvv/packst/

Перейти на страницу:

Похожие книги

Черный чемоданчик Егора Лисицы
Черный чемоданчик Егора Лисицы

Юг России, двадцатые годы прошлого века, разгар Гражданской войны. Молодой судебный врач Егор Лисица мечтает раскрывать преступления при помощи новой науки – криминалистики. Неожиданно для себя он оказывается втянут в стремительный водоворот событий, где перемешаны шпионаж и огромные деньги, красные и белые, благородство уходящего века и жестокие убийства. В составе небольшого отряда Егор Лисица выполняет сверхважную миссию – доставить ценный и секретный груз к морю. Но миссия под угрозой. Внутри отряда орудует хладнокровный преступник. Егор вынужден вступить с ним в борьбу. Круг подозреваемых сужается, превращаясь в список жертв. Сможет ли знание прогрессивных научных методов помочь герою в противостоянии «оборотню»? Чем закончится интеллектуальный поединок вчерашнего студента и беспринципного, изощренного убийцы? Книга Лизы Лосевой «Черный чемоданчик Егора Лисицы» стала лауреатом премии «Русский детектив» в 2020 г. в номинации «Открытие года». Любителей детективов в книге ожидает сюрприз – авторская детективная игра-квест с героями книги.

Лиза Лосева

Детективы / Криминальный детектив / Шпионский детектив / Игры, упражнения для детей / Исторические детективы