Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Примеры. Примечание. Пример не содержит цифры ноль, потому что она выглядит практически так же, как символ химического элемента кислорода
Примечание. Пример не содержит цифры ноль, потому что она выглядит практически так же, как символ химического элемента кислорода. Настоящие тесты могут содержать любые допустимые символы.
Задача 25. Последовательность В последовательности чисел a 1, a 2, a 3,... задан первый член, а остальные вычисляются по формуле ai = (ai - 1)2 mod 10 000. Найти N -й член последовательности.
Дано N отрезков провода длиной L 1, L 2,..., LN сантиметров. Требуется с помощью разрезания получить из них K равных отрезков как можно большей длины, выражающейся целым числом сантиметров. Если нельзя получить K отрезков длиной даже 1 см, вывести 0.
Непустая строка, содержащая некоторое слово, называется палиндромом, если это слово одинаково читается как слева направо, так и справа налево. Пусть дана строка, в которой записано слово S, состоящее из N прописных букв латинского алфавита. Вычёркиванием из этого слова некоторого набора символов можно получить строку, которая будет палиндромом. Требуется найти количество способов вычёркивания из данного слова некоторого (возможно, пустого) набора символов таких, что полученная в результате строка являлась палиндромом. Способы, различающиеся порядком вычёркивания символов, считаются одинаковыми.
Два круга заданы координатами центров в прямоугольной декартовой системе координат и радиусами. Найти площадь их пересечения. Ограничения: во входных данных числа вещественные и по модулю не превосходят 1000, время 1 с. Ввод из файла circarea.in. В первой строке находятся шесть вещественных чисел через пробел - координаты центров и радиусы двух кругов: x1, y1, r1, x2, y2, r2. Вывод в файл circarea.out. Вывести одно вещественное число с двумя знаками после запятой - площадь пересечения кругов. Примеры Ввод 1 20.0 30.0 15.0 40.0 30.0 30.0 Вывод 1 608.37
Обеденный перерыв Гомера Симпсона составляет T миллисекунд. Один гамбургер Гомер съедает за N миллисекунд, один чизбургер - за M. Требуется найти максимальное суммарное число гамбургеров и чизбургеров, которые Гомер может съесть в течение обеденного перерыва.
Напишите программу, реализующую сложение, вычитание, умножение и деление дробей. Формат дробей во входных и выходных данных:
Примеры представления дробных чисел: -7 3/4, 8 1/2, -7/11, 0, 11.
Задача 31. Анти-QuickSort Для сортировки последовательности чисел широко используется быстрая сортировка - QuickSort. Далее приведена программа, которая сортирует массив a, используя этот алгоритм. var a: array [1..N] of integer; procedure QSort(left, right: integer); var i, j: integer; key: integer; buf: integer; begin key: = a[(left + right) div 2]; i: = left; j: = right; repeat while a[i] < key do {первый while} inc(i); while key < a[j] do {второй while} dec(j); if i < = j then begin buf: = a[i]; a[i]: = a[j]; a[j]: = buf; inc(i); dec(j); end; until i > j; if left < j then QSort(left, j); if i < right then QSort(i, right); end; begin... QSort(1, N); end.Хотя QuickSort является самой быстрой сортировкой в среднем, существуют тесты, на которых она работает очень долго. Оценивать время работы алгоритма будем количеством сравнений с элементами массива (то есть суммарным количеством сравнений в первом и втором while). Требуется написать программу, генерирующую тест, на котором быстрая сортировка сделает наибольшее число таких сравнений.
Строку Фибоначчи F (K) для натуральных чисел K определим так: F (1) = 'A', F (2) = 'B', F (K) = F (K - 1) + F (K - 2) при K > 2, где " +" означает конкатенацию строк. Требуется найти количество вхождений строки S, состоящей из символов A и B, в строку Фибоначчи F (N).
Бумажная полоска разделена на N клеток. Двое играющих по очереди выбирают и зачёркивают ровно K пустых смежных клеток. Выигрывает сделавший последний ход. Оба игрока придерживаются правильной стратегии. Дана ситуация игры. Требуется определить, кто выиграет.
Многоугольник на плоскости задан целочисленными координатами своих N вершин в декартовой системе координат. Требуется найти количество точек с целочисленными координатами, лежащих на границе многоугольника. Стороны многоугольника друг с другом не соприкасаются (за исключением соседних - в вершинах) и не пересекаются.
Пещера представлена кубом, разбитым на N частей по каждому измерению (то есть на N 3 кубических клеток). Каждая клетка может быть или пустой, или полностью заполненной камнем. Исходя из положения спелеолога в пещере, требуется найти, какое минимальное количество перемещений по клеткам ему требуется, чтобы выбраться на поверхность. Переходить из клетки в клетку можно, только если они обе свободны и имеют общую грань.
На столе лежат несколько кусков ткани, не перекрывая друг друга. Эти куски могут иметь дыры, в том числе и настолько большие, что в них может поместиться целый кусок ткани. Был получен чёрно-белый образ поверхности стола, на котором области, покрытые тканью, представлены символами *, а свободные площади - точками. Один кусок ткани, таким образом, представлен 4-связной областью символов *, то есть группой *, соседствующих друг с другом горизонтально или вертикально, но не по диагонали. .***..***.*.*.**.*.***.*.***...**.*.На схеме три куска - один без дыр, а два - с одной дырой каждый: первый площадью 8, второй - площадью 12. Ваша цель - найти кусок с наибольшим количеством дыр в нём. Дыра - это 4-связная область точек, полностью окружённых символами *. Если несколько кусков имеют одинаковое количество дыр, нужно выбрать кусок минимальной площади. Ввод из файла holey.in. В первой строке содержатся два числа W и H, разделённые пробелами. Следующие H строк содержат по W символов каждая. Символы в этих строках - или * (ASCII 42), или точка (ASCII 46). Ограничения: 1 < = W, H < = 100, время 1 с. Вывод в файл holey.out. Вывести одно целое число - площадь минимального из наиболее дырявых кусков. Если нет кусков с дырами, выходной файл должен содержать ноль.
|