B. Печеньки Ограничение времени 1 секунда
Ограничение памяти 10.0 Мб
Ввод стандартный ввод
Вывод стандартный вывод
На столе стоят три чашки с печеньками. В левой вазе лежат X печенек, в средней вазе лежат Y печенек, в правой вазе лежат Z печенек. Ринат съедает одну печеньку из левой чашки, затем – одну печеньку из средней чашки, затем из правой, средней, левой, средней, правой, средней и т. д. (слева направо, затем налево, опять направо и т.д.). Если Ринат хочет взять печеньку из какой-то чашки, а печенек там нет, он расстраивается и уходит. Определите, сколько печенек съест Ринат.
Формат ввода
Программа получает на вход три целых неотрицательных числа X, Y, Z – количество печенек в левой, средней, правой чашке.
3
3
3
Формат вывода
Выведите количество печенек, которые съест Ринат.
7
решить
a = input("Введите текущую координату фигуры(вертикаль): ")
b = input("Введите текущую координату фигуры(горизонталь): ")
c = input("Введите координату для хода(вертикаль): ")
d = input("Введите координату для хода(горизонталь): ")
# Условие
if (a==c) and (b==c):
#Конец условия
print("Фигура может сделать ход")
else:
print("Фигура НЕ может сделать ход")
Условия:
а) if (a==c) and (b==c): #ладья
б) if abs(a-c) == abs(b-d): #слон
в) if abs(a-c)==1 or abs(b-d)==1: #король
г) if abs(a-c) == abs(b-d) or a == c or b == d: #ферзь
ж) if((abs(abs(a-c)-2)<0.5) and (abs(abs(b-d)-1)<0.5)
or (abs(abs(a-c)-1)<0.5) and (abs(abs(b-d)-2.0)<0.5)): #конь
1. Просматривая строку массива от первого элемента, найти минимальный элемент и поместить его на место первого элемента, а первый — на место минимального.
2. Просматривая строку массива от второго элемента, найти минимальный элемент и поместить его на место второго элемента, а второй — на место минимального.
3. И так далее до предпоследнего элемента.
Решение:
//Pascal
const
n = 7;
var
a: array[1..n, 1..n] of integer;
i, j, min, ind: integer;
//Заполнение массива сл. числами и вывод на экран
begin
for i := 1 to n do
begin
for j := 1 to n do
begin
a[i, j] := random(100);
write(a[i, j]:4);
end;
writeln;
end;
//Сортировка строки матрицы прямым выбором
for i := 1 to n - 1 do
begin
min := a[4, i];
ind := i;
for j := i + 1 to n do
if a[4, j] < min then
begin
min := a[4, j];
ind := j;
end;
a[4, ind] := a[4, i];
a[4, i] := min;
end;
writeln;
//вывод отсортированной строки
for j := 1 to n do
begin
write(a[4, j]:4);
end;
end.