Задачи с олимпиады

  • Печать

2. Планирование урожая

Иван Иванович решил посадить картошку. Однако в его прямоугольном огороде есть множество зданий с квадратным фундаментом. Иван Иванович желает узнать, какая площадь доступна для посадки.

Формат входных данных:

На вход программы подаётся строка, которая содержит два натуральных числа a и b (a, b ≤ 2 * 109) – размеры огорода.

Вторая строка содержит натуральное число N (N ≤ 5 * 104) – количество зданий в огороде.

Далее следует строка, состоящая из N чисел, каждое из которых не превышает 5 * 104 и описывает ширину i-го здания.

Гарантируется, что суммарная площадь зданий не превышает площади огорода.

Формат выходных данных:

Ваша программа должна вывести единственное число, равное свободной от зданий площади.

Примеры:

Входные данные Выходные данные
5 10
2
3 4
25
6 6
1
6
0
7 8
2
6 4
4





3. Современный оператор

В Ивановской области появился новый оператор сотовой связи. У Василия Ивановича смартфон имеет бесперебойную связь, если находится на расстоянии, не большем R, от любой из вышек. Напишите программу, которая определит, является ли связь у Василия Ивановича бесперебойной.

Формат входных данных:

На вход программы подаётся строка с натуральными числами N (1 ≤ N ≤ 30) – количеством вышек в Ивановской области и R (R ≤ 5 * 104) – расстояние, достаточное для бесперебойной связи.

Далее следует N строк, каждая из которых состоит из двух чисел Xi и Yi (|Xi|, |Yi| ≤ 5 * 104), описывающих координаты вышек относительно Василия Ивановича.

Формат выходных данных:

Необходимо вывести «YES», если связь обеспечена, и «NO» в противном случае.

Примеры:

Входные данные Выходные данные
3 5
1 3
2 8
-6 -6
YES
3 5
1 5
2 8
-6 -6
NO





4. Математическая контрольная

В школе города Глупова проходит контрольная по математике. Эта контрольная предназначена для проверки навыков решать уравнения, содержащие только знак умножения. Но прежде чем проверить работы учащихся, учитель должен сам прорешать эту контрольную. Это довольно скучная и однообразная задача. Поэтому, он решил обратиться к Ивановским программистам, уж они-то смогут написать программу, которая сама всё решит.

Формат входных данных:

На вход программы подаётся строка с единственным числом N (1 ≤ N ≤ 30) – количеством уравнений в контрольной.

Далее следует N строк, каждая из которых состоит из шести символов:

- Первый символ – "x" (латинская маленькая буква) или цифра;

- Второй символ – знак умножения (*);

- Третий символ - "x" или цифра;

- Четвёртый символ – знак равенства (=);

- Пятый и шестой символ – цифры, составляющие результат умножения.

Гарантируется, что во введённой строке "x" присутствует один раз.

Формат выходных данных:

Ваша программа должна вывести N строк.

В каждой строке необходимо вывести число, при подстановке которого в соответствующее уравнение, получается верное равенство. Гарантируется, что все такие числа будут целыми, а также факт того, что уравнение имеет решение и только одно.

Ответы нужно выводить в том же порядке, в каком подаются на вход программы сами уравнения.

Примеры:

Входные данные Выходные данные
5
x*4=12
x*2=10
6*x=72
7*x=14
3*x=12
3
5
12
2
4