- •Тема: Перебор вариантов. Задача 1. Замечательные числа
- •Задача 2. Острова
- •Задача 3 Клавиатура
- •Задача 4 . Вырубка деревьев
- •Краткие методические рекомендации по решению задачи
- •Оценка решения
- •Формат входных данных
- •Формат выходных данных
- •Работа с большими числами
- •Золото племени абба
- •Сортировка и поиск
- •2. Домашнее задание.
- •Метод перебора вариантов, отсечения перебора
- •Сумма двух чисел
- •Элементы вычислительной геометрии
- •4. Две окружности
- •Эффективные структуры данных
- •5. Поиск прямоугольников (Время: 0,5 сек. Память: 16 Мб Сложность: 34%)
- •Тема 1: «Работа с длинными числами»
- •Тема 2: Алгоритмы поиска и сортировки
- •Тема 3: Аналитическая геометрия
- •Тема 4: Перебор вариантов
- •Тема 5: Строки. Элементы лексического и синтаксического разобра
- •Задача 3. "Функция"
- •Ограничения
- •Площади покрытия антенны
- •Площадь покрытия решение
- •Элементы лексического и синтаксического разбора Шифровка
- •Шифровка Решение
- •Сортировка и поиск Независимые судьи
- •Независимые судьи Решение
- •Сувениры
- •Сувениры Решение
- •Треугольник Условие задачи
- •Треугольник Решение
- •Олимпиадные задачи по информатике
- •Задача 1. «Код да Винчи»
- •Задача 3 «Буквы»
- •Задача 4 «Соревнования»
- •Задача «Красивая последовательность»
- •Тема: Задача на динамическое программирование
- •Динамическое программирование Задача: Черепашка
- •Решение
- •Тема: Работа с большими числами
- •Тема: Сортировка и выбор
- •Задача. Подземная дорога (поиск в ширину)
- •Формат входных данных
- •Задача rebus
- •Задача “Эчпочмаки”
- •Задача “Ниточка”
- •Задача “Обезьяны”
- •Задача Интересное число
Задача 1. «Код да Винчи»
Задание. Недавно Соня научилась считать. Она тут же заметила, что число 2 обладает замечательным свойством 2 + 2 = 2 * 2. Ее друг Леня тут же объяснил ей, что дело не в двойке.
- "Дело в том, что последовательность 2, 2 – особенная," – сказал Соне Леня.
– "Такие последовательности изобрел Леонардо да Винчи и их принято называть «Кодом да Винчи».
Код да Винчи – это такая последовательность натуральных чисел, что сумма ее членов равна их
произведению. Например, последовательность 1, 2, 3 – тоже является кодом да Винчи."
Соня тут же сложила 1, 2 и 3, потом перемножила их и обрадовалась.
Теперь Соня хочет найти более длинные коды да Винчи. Помогите ей!
Формат входных данных
Во входном файле input.txt задано целое число N (2<= N <= 100).
Формат выходных данных
Выведите в файл output.txt любой код да Винчи длины N. Разделяйте числа пробелами.
Члены последовательности не должны превышать 109. Если такого кода да Винчи длины N не существует, выведите в выходной файл единственное число – "-1".
Пример
Пример входного файла input.txt |
Пример выходного файла output.txt |
2 |
2 2 |
Код программы
program B;
var
n, i : integer;
begin
assign(input, 'input.txt');
reset(input);
assign(output, 'output.txt');
rewrite(output);
read(n);
for i := 1 to n – 2 do
write(1,' ');
writeln('2',n);
close(input); close(output);
end.
Задача 2. «Лягушки»
Задание. Ваня наблюдает за лягушкой. Изначально она сидит в точке 0 числовой прямой. Каждую секунду она прыгает на 1 вправо, пока не достигнет точки K .Затем она начинает каждую секунду прыгать на 1 влево, пока не вернется в точку 0,затем – опять вправо и т.д. Требуется определить, где окажется лягушка через T секунд.
Формат входных данных
Во входном файле input.txt в двух строках находятся два числа K и T, разделенные пробелом. Оба числа натуральные и не превосходят 1 000 000 000.
Формат выходных данных
Вывести в выходной файл output.txt одно число – координату лягушки в момент времени T.
Пример
Пример входного файла input.txt |
Пример выходного файла output.txt |
5 8 |
2 |
Примечание
Программа не должна выводить никаких дополнительных сообщений, а также не может содержать операторов, вызывающих задержку выполнения программы (например, readln в конце программы)
Код программы
program A;
var
k, t: integer;
begin
assign(input, 'input.txt');
reset(input);
assign(output, 'output.txt');
rewrite(output);
ReadLn(k, t);
if (t div k mod 2 = 0) then
WriteLn(t mod k)
else
WriteLn(k - t mod k);
close(input);
close(output);
end.
Задача 3 «Буквы»
Задание. Дана текстовая строка, состоящая из заглавных латинских букв. Требуется найти подстроку из трёх букв, которая встречается в данной строке чаще всего.
Формат входных данных
Входной файл input.txt содержит текстовую строку.
Формат выходных данных
Вывести в выходной файл output.txt единственное число — количество вхождений самой часто встречающейся подстроки из трёх букв.
Примечание
Длина исходной строки от 3 до 1000000 символов.
Пример
Пример входного файла input.txt |
Пример выходного файла output.txt |
DEFDEFABCABCZABCDEFDEF |
4 |
Код программы
program word;
var
t1, t2: text;
n, i, j, k: integer;
s, s1, s2: string;
begin
Assign(t1,'input.txt');
Assign(t2,'output.txt');
reset(t1);
rewrite(t2);
read(t1, s);
k := 0;
for i := 1 to length(S) - 2 do
begin
s1 := copy(s, i, 3);
for j := 1 to length(s) - 2 do
begin
s2 := copy(s, j, 3);
if s2 = s1 then inc(k);;
end;
if k > n then n := k;
k := 0;
end;
write(t2, n);
close(t1);
close(t2);
end.
