Guest User

Untitled

a guest
Jun 16th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 0.76 KB | None | 0 0
  1. var
  2.     n, a, b: longint;
  3.  
  4. function max(a, b: longint): longint;
  5. begin
  6.     if (a > b) max := a
  7.     else max := b;
  8. end;
  9.    
  10. function search(k,i:longint):longint;
  11. var
  12.     j: longint;
  13.     max1,max2, res: longint;
  14. begin
  15.     res := max(a,b) * n + 1;
  16.     j := n;
  17.     while (j > i) do begin
  18.         max1 := a + (y - i - 1) * b;
  19.         max2 := search(k, y);
  20.         res := max(res, max(max1, max2));
  21.         if(res >= k) then search := res else break;
  22.         dec(j);
  23.     end;
  24. end;
  25.  
  26. var
  27.     i: longint;
  28.     max1, max2, res:longint;
  29.  
  30. begin
  31.     readln(n);
  32.     read(a, b);
  33.     if (b > a) then begin
  34.         p := a;
  35.         a := b;
  36.         b := p;
  37.     end;
  38.     if (a * b = 0) or (n = 1) then res := 0
  39.     else begin
  40.         res := max(a, b) * n + 1;
  41.         for i := 1 to n do begin
  42.             max1 := (i - 1) * b;
  43.             max2 := search(max1, i);
  44.             res := max(res, max(max1, max2));
  45.         end;
  46.     writeln(res);
  47. end.
Add Comment
Please, Sign In to add comment