Субота, 23.09.2017, 07:32
Головна Реєстрація Вхід
Вітаю Вас, Гість · RSS
Меню сайту
Статистика

Онлайн всього: 1
Гостей: 1
Користувачів: 0
Форма входу
 Кращі розв'язки
Задача A-Проміле
Березін Дмитро

Var fi,fo:text;
    i,j:longint;
    n,m:longint;
    a:longint;
    sum:longint;
Begin
Assign(fi,'promile.in');Reset(fi);
Assign(fo,'promile.out');Rewrite(fo);
sum:=0;
While not seekeof(fi) do Begin
Read(fi,a);
sum:=sum+a;
end;
Write(fo,sum div 1000,',');
sum:=sum mod 1000;
if sum<10 then Writeln(fo,'00',sum) else
if sum<100 then Writeln(fo,'0',sum) else
if sum<1000 then Writeln(fo,sum);
Close(fo);
end.

Задача B-Драгстери
Лавриненко Марк
VAR
 n,i,j:Longint;
 x,max:extended;
 s,ans:String;
 q:Char;
 p:integer;

 Begin
  Assign(Input,'dragster.in');Reset(Input);
  Assign(Output,'dragster.out');Rewrite(output);
  REadLn(n);
  max := 0;
  For i :=1 to n do
   Begin
     ReadLn(s);
     j:=length(s);
     While s[j]<>' ' do dec(j);
     val(copy(s,j+1,length(s)-j),x,p);
     delete(s,j,length(s)-j+1);
     WriteLn(Sqrt(804*x)*3.6:0:3);
     If x>max then
      Begin
       max := x;
       ans := s;
      End;
   End;
   WriteLn(ans);
  close(input);Close(output);
 End.

Задача C-Eight 2 Sixteen
Сорока Дмитро
{$IFDEF NORMAL}
  {$H-,I-,OBJECTCHECKS-,Q-,R-,S-}
{$ENDIF NORMAL}
{$IFDEF DEBUG}
  {$H-,I+,OBJECTCHECKS-,Q+,R+,S-}
{$ENDIF DEBUG}
{$IFDEF RELEASE}
  {$H-,I-,OBJECTCHECKS-,Q-,R-,S-}
{$ENDIF RELEASE}

var a:array[0..7]of string[3];
    x:char;
    f,ff:text;
    s:string[12];
    s2:string;
    i,n:longint;
    j:byte;
    b:array[0..15]of char;
    c:array[1..1000000]of byte;
function sh(s2:string):byte;
 var m:byte;
 begin
  m:=0;
  if s2[4]='1' then m:=1;
  if s2[3]='1' then m:=m+2;
  if s2[2]='1' then m:=m+4;
  if s2[1]='1' then m:=m+8;
  sh:=m;
 end;
begin
 a[0]:='000';a[1]:='001';a[2]:='010';a[3]:='011';a[4]:='100';a[5]:='101';
 a[6]:='110';a[7]:='111';
 assign(f,'eight.dat');
 reset(F);
 assign(ff,'sixteen.sol');
 rewrite(ff);
 i:=2;
 read(f,x);
 c[1]:=ord(x)-48;
 while x<>'.' do
  begin
   read(f,x);
   if x<>'.' then begin c[i]:=ord(x)-48;inc(i);end;
  end;
 n:=i-1;
 b[0]:='0';b[1]:='1';b[2]:='2';b[3]:='3';b[4]:='4';b[5]:='5';b[6]:='6';
 b[7]:='7';b[8]:='8';b[9]:='9';b[10]:='A';b[11]:='B';b[12]:='C';b[13]:='D';
 b[14]:='E';b[15]:='F';
 if (n mod 4)=1 then
  begin
   write(ff,c[1]);
   i:=2;
   while i<n do
    begin
     s:=a[c[i]]+a[c[i+1]]+a[c[i+2]]+a[c[i+3]];
     inc(i,4);
     s2:=copy(s,1,4);
     write(ff,b[sh(s2)]);
     s2:=copy(s,5,8);
     write(ff,b[sh(s2)]);
     s2:=copy(s,9,12);
     write(ff,b[sh(s2)]);
    end;
  end;
 if (n mod 4)=2 then
  begin
   s:='00';
   s:=s+a[c[1]]+a[c[2]];
   s2:=copy(s,1,4);
   if sh(s2)<>0 then write(ff,b[sh(s2)]);
   s2:=copy(s,5,8);
   write(ff,b[sh(s2)]);
   i:=3;
   while i<n do
    begin
     s:=a[c[i]]+a[c[i+1]]+a[c[i+2]]+a[c[i+3]];
     inc(i,4);
     s2:=copy(s,1,4);
     write(ff,b[sh(s2)]);
     s2:=copy(s,5,8);
     write(ff,b[sh(s2)]);
     s2:=copy(s,9,12);
     write(ff,b[sh(s2)]);
    end;
  end;
 if (n mod 4)=3 then
  begin
   s:='000';
   s:=s+a[c[1]]+a[c[2]]+a[c[3]];
   s2:=copy(s,1,4);
   if sh(s2)<>0 then write(ff,b[sh(s2)]);
   s2:=copy(s,5,8);
   write(ff,b[sh(s2)]);
   s2:=copy(s,9,12);
   write(ff,b[sh(s2)]);
   i:=4;
   while i<n do
    begin
     s:=a[c[i]]+a[c[i+1]]+a[c[i+2]]+a[c[i+3]];
     inc(i,4);
     s2:=copy(s,1,4);
     write(ff,b[sh(s2)]);
     s2:=copy(s,5,8);
     write(ff,b[sh(s2)]);
     s2:=copy(s,9,12);
     write(ff,b[sh(s2)]);
    end;
  end;
 if (n mod 4)=0 then
  begin
   i:=1;
   while i<n do
    begin
     s:=a[c[i]]+a[c[i+1]]+a[c[i+2]]+a[c[i+3]];
     inc(i,4);
     s2:=copy(s,1,4);
     write(ff,b[sh(s2)]);
     s2:=copy(s,5,8);
     write(ff,b[sh(s2)]);
     s2:=copy(s,9,12);
     write(ff,b[sh(s2)]);
    end;
  end;
 write(ff,'.');
 s:='';
 j:=0;
 repeat
  begin
   read(f,x);
   s:=s+a[ord(x)-48];
   inc(j);
   if j=4 then
    begin
     j:=0;
     s2:=copy(s,1,4);
     write(ff,b[sh(s2)]);
     s2:=copy(s,5,8);
     write(ff,b[sh(s2)]);
     s2:=copy(s,9,12);
     write(ff,b[sh(s2)]);
     s:='';
    end
  end;
 until seekeof(F);
 if j=1 then write(ff,x);
 if j=2 then
  begin
   s:=s+'00';
   s2:=copy(s,1,4);
   write(ff,b[sh(s2)]);
   s2:=copy(s,5,8);
   if sh(s2)<>0 then write(ff,b[sh(s2)]);
  end;
 if j=3 then
  begin
   s:=s+'000';
   s2:=copy(s,1,4);
   write(ff,b[sh(s2)]);
   s2:=copy(s,5,8);
   write(ff,b[sh(s2)]);
   s2:=copy(s,9,12);
   if sh(s2)<>0 then write(ff,b[sh(s2)]);
  end;
 close(F);
 close(ff);
end.
Copyright MyCorp © 2017
Пошук
Календар
«  Вересень 2017  »
ПнВтСрЧтПтСбНд
    123
45678910
11121314151617
18192021222324
252627282930
Архів записів
Друзі сайту
Обдаровані діти

Step by Step - Школа олімпійського резерву

Відділ інформаційних технологій та дистанційного навчання ХОІППО