Cod sursa(job #115596)

Utilizator Pepelea_FlaviuFlaviu Pepelea Pepelea_Flaviu Data 16 decembrie 2007 18:19:45
Problema Multiplu Scor 20
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.99 kb
var a,b:longint;
    fi,fo:text;
    rez,inf,i:int64;
    baza:array[1..100]of byte;
function binar(a:int64):int64;
var numar2:int64;
    uc,ct,i:integer;
begin
  numar2:=0; ct:=0;
  while a<>0 do
    begin
      uc:=a and 1;
      inc(ct); baza[ct]:=uc;
      a:=a shr 1;
    end;
  for i:=ct downto 1 do
    numar2:=numar2*10+baza[i];
  binar:=numar2;
end;
function solv:int64;
var rez2:int64;
begin
   if (a and 1=0)or(b and 1=0) then
  begin
  i:=20;
  while i<=1000000000 do
    begin
      rez2:=binar(i);
      if (rez2 mod a=0)and(rez2 mod b=0) then begin solv:=rez2; exit; end;
      inc(i,2);
    end; end
  else
   begin
     i:=20;
  while i<=1000000000 do
    begin
      rez2:=binar(i);
      if (rez2 mod a=0)and(rez2 mod b=0) then begin solv:=rez2; exit; end;
      inc(i);
    end; end
end;
begin
  assign(fi,'multiplu.in'); reset(fi);
  assign(fo,'multiplu.out'); rewrite(fo);
  read(fi,a,b);
  writeln(fo,solv);
  close(fi);
  close(fo);
end.