Задано четыре числа: a,b,c,d .Требуется разбить их ** две пары,чтобы сумма произведений в...

0 голосов
65 просмотров

Задано четыре числа: a,b,c,d .Требуется разбить их на две пары,чтобы сумма произведений в этих парах была максимальна
Например,если заданы числа 2,3,4 и 5, то оптимально разбить их на пары (2,3) и (4,5),в этом случае искомая сумма равна 2x3+4x5=26.

Формат входных данных
На вход подаются четыре числа: a.b.c и d.Все числа по модулю не превышают 1000..

Формат выходных данных.
Выведите искомую максимальную сумму.

Примеры
стандартный ввод
2 3 4 5
стандартный вывод
26


Информатика (33 баллов) | 65 просмотров
0

Это На Паскале писать?

Дано ответов: 2
0 голосов
Правильный ответ

Var a,b,c,d,s:integer;
begin
readln(a,b,c,d);
s:=a*b+c*d;
if a*c+b*d>s then s:=a*c+b*d;
if a*d+b*c>s then s:=a*d+b*c;
writeln(s);
// можно вывести полученные пары чисел:
if s=a*b+c*d then writeln('(',a,',',b,') и (',c,',',d,')')
 else if s=a*c+b*d then writeln('(',a,',',c,') и (',b,',',d,')')
  else writeln('(',a,',',d,') и (',b,',',c,')')
end.

Пример:
2 3 4 5
26
(2,3) и (4,5)

(194k баллов)
0 голосов

Var a: array[1..4] of integer;
    i,j: integer;
begin
   for i:=1 to 4 do read(a[i]);
   for i:=1 to 3 do
   for j:=i+1 to 4 do
   if a[i]   writeln(a[1]*a[2]+a[3]*a[4]);
end.

11 6 5 19
239


(9.7k баллов)