var
n,i,j,max,k: Integer;
lname, name: array [1..100000] of String;
y,g,a:array [1..100000] of longint;
begin
Read(n);
for i:=1 to n do
begin
read(lname[i]);
read (name[i]);
read(y[i],g[i]);
if (max<g[i]) or (i=1) then
max:=g[i];
end;
for i:=1 to n do
if g[i]=max then
begin
writeln(lname[i], ' ', name[i]);
j:=j+1;
a[j]:=i;
end;
for i:=1 to j do
write(g[a[i]], ' ');
end.
1) ответ : 10110010
2) ответ 10010101
3) 1001001
Int _tmain(int argc, _TCHAR* argv[])
{<span>
int s, rashod, ben;</span>
<span> printf("Расстояние до дачи (км): \n", s);</span><span>
printf("Расход бензина ( литров на 100 км пробега): \n", rashod);</span><span>
printf("Цена литра бензина (руб.): \n", ben);</span><span>
printf("Поездка на дачу и обратно обойдется в \n", (2*s/100)*rashod*ben);</span>
<span> return 0;
</span><span>}
s - расстояние
rashod - расход
ben - цена 1 литра</span>
Условные обозначения:
not(x)=не(х)
\/ = +
/\=*
1) F=(x+z)*(x+not(z))*not(y)={можем раскрыть скобки точно так же, как в обычной алгебре}=(x*x+x*not(z)+z*x+z*not(z))*not(y)={применяем закон идентичности, исключающего третьего, свойства констант}=(x+x(not(z)+z)+0)*not(y)=(x+x*1)not(y)=(x+x)*not(y)=x*not(y);
2) F=(x+z)*(x+not(z))*not(y)={можем сразу воспользоваться законом дистрибутивности}=(x+z*not(z))*not(y)=(x+0)*not(y)=x*not(y).
371-563 8
371-173 16
A3E16-2622 10
1.237 10 - 1,00111100101011 2
2.472 10 - 10,01111000110101 2