Guest User

Untitled

a guest
Jul 22nd, 2018
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.46 KB | None | 0 0
  1. program Project1;
  2.  
  3. {$APPTYPE CONSOLE}
  4.  
  5. uses
  6.   SysUtils;
  7.  
  8. const
  9.   st = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
  10. var
  11.   i, j : Integer;
  12.   s : String;
  13.   l : Integer;
  14.   max : Integer;
  15.   num : Integer;
  16.   s2 : array [1..10000] of Byte;
  17.   ss : array [1..1000000] of Byte;
  18.   sk : array [1..1000000] of Byte;
  19.   p2 : Integer;
  20.   len : Integer;
  21.   sum : Integer;
  22.   //wid : Integer;
  23.   b : Boolean;
  24.   lt : Integer;
  25. begin
  26.   readln(s);
  27.   l := length(s);
  28.  
  29.   max := -1;
  30.   for i :=1 to l do
  31.   begin
  32.     num := pos(s[i], st);
  33.     ss[i] := num - 1;
  34.     if num > max then max := num;
  35.   end;
  36.  
  37.   if max < 2 then max := 2;
  38.  
  39.   b := false;
  40.  
  41.   for i := max to 36 do
  42.   begin
  43.  
  44.     move(ss, sk, l);
  45.     lt := l;
  46.  
  47.  
  48.     repeat
  49.  
  50.       len := 1;
  51.       FillChar(s2, 10000, 0);
  52.       for j := 1 to lt do
  53.       begin
  54.         p2 := 1;
  55.         sum := sk[j];
  56.         while true do
  57.         begin
  58.           s2[p2] := s2[p2] + sum;
  59.           if s2[p2] - i >= 0 then
  60.           begin
  61.             s2[p2] := s2[p2] - i;
  62.             sum := 1;
  63.             p2 := p2 + 1;
  64.             if p2 > len then len := p2;
  65.           end
  66.           else break;
  67.         end;
  68.       end;
  69.       move(s2, sk, len);
  70.       lt := len;
  71.     until len = 1;
  72.  
  73.     if (s2[1] mod (i - 1)) = 0 then
  74.     begin
  75.       b := true;
  76.       break;
  77.     end;
  78.  
  79.   end;
  80.  
  81.   if b then writeln(i)
  82.   else writeln('No solution.');
  83.  
  84.   readln;
  85.   readln;
  86.  
  87.  
  88.   { TODO -oUser -cConsole Main : Insert code here }
  89. end.
Add Comment
Please, Sign In to add comment