|
|
|
|
|
|
|
Городская олимпиада по информатике 1988 г. (теоретический тур) - Ответы |
|
|
|
Алгоритм вычисляет сумму элементов таблицы.
К задачам
| | | | | |
Задача реализуется очень просто, если воспользоваться процедурой, которая определяет, являются ли два данных числа взаимно простыми. Напомним, что взаимно простыми называются числа, не имеющие общих делителей.Три числа будут взаимно простыми, если никакие два не имеют общих делителей.
К задачам
| | | | | |
Задача реализуется подобно задаче 9 (период дроби), т.е.,
имеется в виду та ее часть, которая реализует алгоритм деления в
столбик.
К задачам
| | | | | |
Здесь в качестве реализации предполагается программа,
которая вводит литерную строку и анализирует каждый символ.
Предполагается, что программа предусматривает проверку
арифметического выражения на корректность, т.е., анализ, не стоят
ли подряд два знака операции либо два имени переменных.Наше
упрощенное арифметическое выражение имеет вид:
"<буква><знак операции><буква><знак операции>..."
При этом <буква>::=AЙBЙCЙ...ЙZ
<знак операции>::=+Й-Й*Й/
Выражение может начинаться со знака "-", тогда на всех
нечетных местах стоят знаки операций, а на четных - буквы, либо
на нечетных местах стоят буквы, а на четных - знаки операций.
К задачам
| | | | | |
Пусть имеется сумма в q гиней, r фунтов, f шиллингов и p
пенсов. 1. Переведем всю сумму в пенсы: Р=q*21*12 + r*20*12 + f*12+ p 2. Переведем в шиллинги и пенсы: RP=P-int(p/12)*12 - остаток в пенсах, он не изменится.RK=int(P/12) - сумма, которая минимизируется. 3. Рассмотрим эту сумму в фунтах и шиллингах. F=int(RK/20);SF=RK-F*20;MF=F+SF
4. Рассмотрим эту сумму в гинеях и шиллингах.
G=int(RK/21)
SG=RK-G*21
MG=G+SG
5. Если MG<=MF, то задача решена.
6. Если MG>MF, то:
6.1. Если F-SF<=0, то MF есть решение.
6.2. Если F-SF>0, то
F=F-SF
G=SF
MF=G+F.
К задачам
| | | | | |
В этой задаче нужно описать алгоритм совмещения областей, а затем, пользуясь прозрачностью бумаги, определить совпадение фигур. Некоторая тонкость заключается в том, что следует учесть все виды поворотов, а также переворот одного из
листов(зеркальное отражение). Для решения достаточно представить
алгоритм в любом виде, в том числе и описательном.
К задачам
| | | | | |
Площадь выпуклого четырехугольника, если заданы вершины,
определяется,как сумма площадей двух треугольников. Следует лишь
аккуратно проделать обход, чтобы не было самопересечений(т. е.,
чтобы не нарушить условие выпуклости многоугольника).
К задачам
| | | | | |
Для решения задачи нужно найти коэффициенты многочлена,
который является произведением исходных многочленов. Фактически
нужно реализовать формулу: C = l *a * b , где i=0,1,2,...,n+m
i k+l=i k l
Запись k+l=i означает, что k и l пробегают все значения, для
которых сумма их равна i, например, при i=0 k=0 и l=0, при i=1 ,
k=0 и l=1 или k=1 и l=0.
К задачам
| | | | | |
|
|
|