Входные данные: Даны два входных файла: файл A (27-1a.txt) и файл B (27-1b.txt), каждый из которых содержит в первой строке количество пар N (1 ≤ N ≤ 100000). Каждая из следующих N строк содержит два натуральных числа, не превышающих 10 000.
Пример входного файла:
6
1 3
5 12
6 9
5 4
3 3
1 1
Для указанных входных данных значением искомой суммы должно быть число 20.
В ответе укажите два числа: сначала значение искомой суммы для файла А, затем для файла B.
1) В каждой паре ищется минимальное число (условие, что сумма должна быть минимальной) и добавляется в сумму.
2) Чтобы учесть второе условие - сума должна не делиться на 3, мы ищем минимальную разность между парными числами по абсолютной величине, не делящуюся на 3.
3) Если сумма не делится на 3, выводим ее, иначе добавляем к ней минимальную разность и выводим результат.
f:text;
begin
assign(f,'27-1b.txt');
reset(f);
d:=3;
s:=0;m:=10001;
readln(f,n);
for i:=1 to n do
begin
readln(f,a,b);
if a<b then s:=s+a else s:=s+b;
r:=abs(a-b);
if r mod d > 0 then if r<m then m:=r;
end;
if s mod d <>0 then write(s) else write(s+m);
close(f);
end.
end.
Для файла 27-1b.txt результат 200157496
Комментариев нет:
Отправить комментарий