понедельник, 1 октября 2018 г.

Сэр Троглодит

Сэр Троглодит
23 дек. 2016 г. на английском языке вышла первая серия героев 3! Затем она была дополнительно залита с переводом на русский язык.
Всего 38 видео за полтора года. Вначале серии выходили редко, потом видео стали появляться раз в неделю. И вот наконец, преодолена планка в 50.000 подписчиков, что говорит о том, что канал Сэра Троглодита - самый популярный в мире по героям меча и магии 3! "Всем настойки на подземной жабе!"
(Для сравнения - у крупнейшего англоязычного геройщика TheKnownWorld всего 19к подписчиков.)

сортировка по-японски pascal

http://acm.timus.ru/problem.aspx?space=1&num=1546&locale=ru
http://acm.timus.ru/Supplement/BlackBox/BlackBox.aspx
http://acm.timus.ru/submit.aspx?space=1&num=1546

решение
сортировка по-японски pascal

  • function IsLess(const pa, pb: PChar): Boolean;
  • const D = ['0'..'9']; D0 = D+[#0];
  • var
  •  a, b, ta, tb, za, zb: PChar;
  • begin
  •  a:=pa; b:=pb;
  •  while (a^<>#0) and (b^<>#0) do begin
  •    while not (a^ in D0) and not (b^ in D0) and (a^=b^) do begin
  •      Inc(a); Inc(b);
  •    end;
  •    if (a^ in D) and (b^ in D) then begin
  •      za:=a; while a^='0' do Inc(a); ta:=a; while a^ in D do Inc(a);
  •      zb:=b; while b^='0' do Inc(b); tb:=b; while b^ in D do Inc(b);
  •      if a-ta<>b-tb then begin
  •        IsLess:=a-ta<b-tb; Exit;
  •      end else begin
  •        a:=ta; b:=tb;
  •        while (a^ in D) and (b^ in D) and (a^=b^) do begin
  •          Inc(a); Inc(b);
  •        end;
  •        if a^ in D then Break;
  •        if a-za<>b-zb then begin
  •          IsLess:=a-za<b-zb; Exit;
  •        end;
  •      end;
  •    end else Break;
  •  end;
  •  IsLess:=a^<b^;
  • end;