См. также:
|
Задачи городской олимпиады СПб 1996 годаРайонный теоретический тур (1-ый тур)
Городской теоретический тур (2-ой тур)
Городской практический тур (3-ый тур)
Районный теоретический тур (1-ый тур)
Во входном потоке расположена строка, cостоящая из нулей и единиц. Требуется найти длину наибольшей подстроки вида ABCD, где
A - непрерывная цепочка нулей (не менее 6 символов); На вход программе подается последовательность символов, составляющих строку. Признаком конца служит символ "." (точка). Длина строки заранее не определена. Строка может быть такой длинной, что не поместится в память вашего компьютера. Программа должна прочитать строку ровно 1 раз. Например, для строки "0100100000001001111111110." ответом будет 19.
Отрезок числовой оси от 0 до 1.000.000.000 выкрасили в белый цвет. Затем отдельные участки (между точками с целыми координатами) перекрашивали в белый и черный цвета. Всего было выполнено N (1< N < 100) перекрашиваний. Напишите программу, которая по заданной последовательности перекрашиваний находит границы самого длинного белого участка. Например, для N=4 и последовательности: 1- 999999997 в черный, 40-300 в белый, 300-634 в белый, 43-47 в черный, ответом будет участок (47-634).
Имеется клетчатое поле размером MxN клеток (0< M,N< =20). В разных клетках поля находятся два маленьких шарика, которые могут перемещаются по полю по диагонали. За один шаг каждый шарик перемещается на одну из 4-х соседних диагональных клеток. При соударении с границей поля шарик меняет свое направление, отражаясь как луч света. При попадании в угол шарик меняет направление своего движения на противоположное. Напишите программу, которая вводит начальные координаты, направления скоростей шариков и определяет через сколько шагов шарики столкнутся (окажутся в одной клетки). Либо сообщает, что встреча невозможна.
По заданному целому A (0< A< 1.000.000.000) найти минимальное N, при котором N**N (N в степени N) будет делиться на A без остатка. Напишите программу, которая будет работать эффективнее, чем простой перебор всех значений X. Например, для A=40 ответом будет N=10.
В сообщении, состоящем из одних русских букв и пробелов, каждую букву заменили ее порядковым номером в русском алфавите ('А' - 1, 'Б' - 2, ..., 'Я' - 33), а символ пробела заменили нулем. Напишите программу, которая вводит получившуюся последовательность цифр (не более 30) и находит количество исходных сообщений, из которых могла получиться заданная последовательность. Например, для последовательности "1025" количество возможных исходных сообщений - 4.
Заяц стоит в центре большого катка и поет свою любимую песню в игрушечный микрофон. От микрофона тянется достаточно длинный шнур, конец которого находится в руках у Волка. Пытаясь воспользоваться сложившейся ситуацией, Волк хочет незаметно замотать зайца этим шнуром. Для этого он катается вокруг зайца на коньках и постепенно его заматывает. Напишите программу, которая вводит путь Волка - ломаную, заданную последовательным перечислением координат вершин и определяет на сколько полных оборотов Волк замотает зайца. Учтите, что во Волк во время движения может не только заматывать зайца, но и разматывать. Координаты представляются вещественными числами. Заяц стоит в точке с координатами (0,0).
ББ, БЧ ББ, ЧЧ БЧ, ЧЧ Городской теоретический тур (2-ой тур)
Имеется миллион различных натуральных чисел, не превосходящих 1.000.000.000 (одного миллиарда). Программа может их получить, выполнив сначала процедуру RESET, а затем миллион раз повторяя процедуру GETNEXT, которая вырабатывает следующее число. Напишите программу, которая находит наименьшее натуральное число, не включенное в этот набор чисел. Процедуру RESET нельзя вызвать больше четырех раз и нельзя запоминать в памяти компьютера более 200 чисел.
Вычисление таблицы заключается в решении системы уравнений, в которой переменными являются значения клеток. Для приведенного примера решение такой системы следующее: A7=32, B1=16, C2=48, F4=64, E6=80. Напишите программу, которая вычисляет заданную таблицу, либо определяет, что это невозможно.
Например, для номера счета ![]() программа должна вывести 123456789. А для номера счета ![]() вывести сообщение "восстановление невозможно".
Ниже приведен фрагмент программы на языке БАСТИНДА. Тип данных Длинное определяет неотрицательное 100-значное десятичное число. Процедура Сложить складывает два числа А и Б типа Длинное и записывает результат в В. Вставьте в текст процедуры Сложить два символа и замените один так, чтобы вместо сложения она выполняла вычитание, если известно, что A(B. При вставке часть строки сдвигается вправо, а на освободившееся место записывается вставляемый символ. Обоснуйте свое решение.
Городской практический тур (3-ий тур)Усл. обозначения: ЗЛ - замкнутая ломаная без самопересечений и самокасаний, звенья которой параллельны осям координат. Ломаная задается перечислением координат вершин в порядке обхода по часовой стрелке, первая и последняя вершины совпадают. Координаты вершин - целые числа. Ломаная содержит не более 100 звеньев. Ломаная не содержит последовательных параллельных звеньев.
Задана ЗЛ A и целое число K. Требуется найти ЗЛ B, имеющую минимально возможную площадь при одновременном выполнении следующих условий:
Во входном файле содержится описание ломаной и число K. Результат работы вывести одновременно в файл OUTPUT.TXT и на графический экран. В выходном файле ломная задается также, как во входных данных. На графическом экране изобразите ломную A белым цветом, а ломную B - зеленым. Ваша программа должна выполнить подходящее масштабирование и центровку изображения. Пример файла исходных данных: 10 0 10 20 30 20 30 10 40 10 40 0 10 0 13 Пример выходного файла OUTPUT.TXT для приведенного примера: -3 -13 -3 33 53 33 -3 -13
Задана ЗЛ A и целое число K. Требуется найти ЗЛ B, имеющую максимально возможную площадь при одновременном выполнении следующих условий:
Во входном файле содержится описание ломаной и число K. Результат работы вывести одновременно в файл OUTPUT.TXT и на графический экран. В выходном файле ломная задается также, как во входных данных. На графическом экране изобразите ломную A белым цветом, а ломную B - зеленым. Ваша программа должна выполнить подходящее масштабирование и центровку изображения. Пример файла исходных данных: 10 0 10 20 30 20 30 10 40 10 40 0 10 0 5 Пример выходного файла OUTPUT.TXT для приведенного примера: 15 5 15 15 25 15 25 5 15 05
Задана ЗЛ A и точка с целочисленными координатами (x,y), не лежащая на ломаной A. В точке находится источник света, который освещает непосредственно видимые из него участки ломаной A. Требуется найти освещенные и неосещенные участки ломаной A. Результат работы вывести одновременно в файл OUTPUT.TXT и на графический экран. В файл OUTPUT.TXT вывести только суммарную длину всех освещенных участков. На графическом экране изобразите ломаную A и точку (x,y). Освещенные участки ломаной рисуются белым цветом, а неосвещенные - серым. Ваша программа должна выполнить подходящее масштабирование и центровку изображения. Пример файла исходных данных: 10 0 10 20 30 20 30 10 40 10 40 0 10 0 35 5 Пример выходного файла OUTPUT.TXT для приведенного примера: 9 Система оценок
|