fork download
  1. function A(i: integer; j: integer): integer;
  2. begin
  3. if (i >= 2) and (j >= 2) then begin
  4. //writeln("A(",i,",",j,") = A(",i-1,", A(",i,",",j-1,"+1)<br>");
  5. A := A(i-1, A(i, j-1)+1);
  6. end
  7. else
  8. if (i >=2) and (j = 1) then begin
  9. //writeln("A(",i,",",j,") = A(",i-1,",2)");
  10. A := A(i-1, 2);
  11. end
  12. else
  13. if (i = 1) and (j>= 1) then begin
  14. //writeln("A(",i,",",j,") = ",j);
  15. A := j;
  16. end
  17. else begin
  18. //writeln("A(",i,",",j,") = -1");
  19. A := -1;
  20. end;
  21. end;
  22. var
  23. i,x,y : integer;
  24. begin
  25. readln (x,y);
  26. write(A(x,y));
  27. end.
Success #stdin #stdout 0s 4448KB
stdin
4 7
stdout
509