Информатика, опубликовано 2018-08-22 19:04:04 by Гость
Вася с Петей и Колей заработали много денег. Чтобы не мучиться с дележкой, они решили, что сначала Вася заберет все купюры максимального достоинства, затем Петя – минимального , а все оставшиеся – Коля Помогите рассчитать, кто сколько купюр получит. Формат входных данных В первой строке содержится число N (1 ≤ N ≤ 1000000) – количество купюр. Во второй строке записано N натуральных чисел, не превосходящих 109 – номиналы купюр. Формат выходных данных Выведите через пробел три числа: сколько купюр достанется Васе, Пете и Коле соответственно. Пример input.txt | output.txt 4 | 1 2 3 4 | 1 1 2 5 2 2 4 4 4 | 3 2 0
Ответ оставил Гость
program delehka(input,output);
vara:Array[1..1000010] of longint;
i,n,s,ma,mi,sl:longint;
begin
assign(input,input.txt);
reset(input);
assign(output,output.txt);
rewrite(output);
readln(n);
mi:=(1 shl 30);
ma:=-(1 shl 30);
for i:=1 to n dobeginread(a[i]);
ma:=max(ma,a[i]);
mi:=min(mi,a[i]);
end;
if ma=mi then write(0,,n,,0)
else
beginfor i:=1 to n do
begin
if a[i]=ma then s:=s+1;
if a[i]=mi then sl:=sl+1;
end;
writeln(s, ,sl, ,n-s-sl);
close(input);
close(output);
end;
end.
Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.
Форма вопроса доступна на