Подразделы

Другие разделы

Дата и время

19/12/2024 18:14:34

Авторизация

Имя:
Пароль:
Зарегистрироваться
Восстановить пароль
 

printЗадачи очного тура региональной олимпиады по информатике 2000

1. Слияние чисел

Ограничения: время – 1s/2s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (2)

Слить два натуральных числа в новое число, вставив цифры одного числа между цифрами другого числа, сохранив при этом порядок следования цифр в исходных числах. Новое число должно быть максимальным из всех возможных.
Ввод
Во входном файле содержатся две строки, в каждой строке по одному натуральному числу длиной до 100 цифр.
Вывод
В выходной файл вывести полученное при слиянии число, максимальное из возможных.

Пример ввода

20
4181

Пример вывода

421810

2. Полином

Ограничения: время – 100ms/500ms, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Некоторый многочлен представлен в виде произведения двучленов первой степени вида `(x+a_1)*(x+a_2)*…*(x+a_n)`. Напечатать этот многочлен в стандартной форме `x^n+b_1*x^{n-1}+…+b_{n-1}*x+b_n`. При этом `c*x^k` выводится как `c`*X^`k` (например, 5*X^8), но если коэффициент `c` равен 0, то слагаемое не выводится, если `|c|` равен 1, а `k\ >\ 0`, то выводится только знак коэффициента `c` (например, -X^3), если `k=1`, то степень не выводится (например, 5*X), а если `k=0`, то выводится только `c`. Слагаемые должны выводиться в порядке уменьшения степени множителя `x^k`.
Во входном файле в первой строке содержится число `n` (`1\ ≤\ n\ ≤\ 9`) – количество двучленов, далее идет `n` строк, в каждой строке по одному целому числу от `-10` до `10` – коэффициенты `a_i` перемножаемых двучленов.
В выходной файл вывести многочлен в указанной стандартной форме.

Пример ввода 1

2
1
-1

Пример вывода 1

X^2-1

Пример ввода 2

2
1
1

Пример вывода 2

X^2+2*X+1

3. Периметр треугольника

Ограничения: время – 100ms/500ms, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Найти периметр треугольника, образованного пересечением трех непараллельных друг другу прямых. Прямые задаются коэффициентами `A`, `B` и `C` функциональной зависимости `Аx\ +\ "By"\ =\ C`, где `A` и `B` не обращаются одновременно в ноль.
Во входном файле содержится три строки, в каждой строке задаются коэффициенты `A`, `B` и `C` для одной прямой через пробел. Все коэффициенты целые, не превосходящие по модулю 100. Периметр получившегося треугольника не превосходит 1000.
В выходной файл вывести периметр треугольника с точностью 3 знака после десятичной точки.

Пример ввода

0 1 1
1 0 1
4 3 13

Пример вывода

6.000

4. Проблема Гольдбаха

Ограничения: время – 2s/4s, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

В 1742 г. Христиан Гольдбах, немецкий математик-любитель, послал письмо Леонарду Эйлеру, в котором он сделал предположение, что всякое целое число, большее и равное шести, может быть представлено в виде суммы трех простых чисел. В ответ Эйлер заметил, что для решения этой задачи достаточно доказать, что каждое четное число есть сумма двух простых. К настоящему времени удалось доказать, что всякое достаточно большое нечетное число представляется в виде суммы трех простых чисел, а задача о разбиении четного числа на сумму двух простых еще не решена.
Ваша задача – проверить предположение Гольдбаха для некоторых чисел от 6 до 1000000 (как четных, так и нечетных).
Ввод
Во входном файле содержится несколько (до 1000) строк, в каждой строке задается одно целое число от 6 до 1000000. Конец списка чисел завершается строкой с числом 0.
Вывод
В выходной файл вывести для каждого числа разложение в виде суммы трех простых чисел, как показано в примере. Если возможно несколько разложений, то вывести одно из них. Если разложения не существует, то вывести сообщение "Для числа X гипотеза Гольдбаха неверна". Для завершающей строки с числом 0 в выходной файл ничего не выводить.

Пример ввода

44
6
13
0

Пример вывода

44=2+5+37
6=2+2+2
13=3+5+5

5. Куча мала

Ограничения: время – 200ms/500ms, память – 32MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

На столе кучей вывалено 50 счетных палочек (для удобства идентификации все палочки пронумерованы числами от 1 до 50). Брать из кучи можно только по одной палочке и только свободные палочки, на которых не лежат другие палочки. Требуется определить минимальное количество палочек, которые нужно убрать, чтобы освободить палочку с указанным номером. Например, чтобы освободить палочку с номером 3, нужно убрать палочку с номером 5, затем 1, а затем 4 (всего три палочки).
Ввод
Во входном файле содержится несколько строк. В первой строке содержится одно целое число от 1 до 50 – номер палочки, которую нужно освободить. В следующих строках содержится по два целых числа а и b от 1 до 50 через один пробел, означающих, что на палочке с номером a лежит, непосредственно соприкасаясь, палочка c номером b. Конец списка завершается строкой с числами 0 0.
Вывод
В выходной файл вывести минимальное число палочек, которое нужно убрать, чтобы освободить палочку с заданным номером, либо –1, если освободить палочку не удастся

Пример ввода

3
1 5
2 5
3 4
9 3
3 1
0 0

Пример вывода

3
loading