Advertisement
dimapi

Untitled

Feb 2nd, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.04 KB | None | 0 0
  1. program Dany;
  2. type MMM =array[1..2,1..2000] of byte;
  3.  
  4. var A,B : byte;
  5. KK,RR,KO: integer;
  6. MK,MO : MMM;
  7.  
  8. function Est(M : MMM;KKK : integer;X,Y : byte) : boolean;
  9. var I : integer;
  10. FO : boolean;
  11. begin
  12. FO := false;
  13. for I := 1 to KKK do
  14. if (X=M[1,I])AND(Y=M[2,I]) then
  15. begin
  16. FO := true;
  17. break;
  18. end;
  19. Est := FO;
  20. end;
  21.  
  22. function Delaem(D : byte;var X1,Y1 : byte;var X,Y : byte) : boolean;
  23. var Fl,F2 : boolean;
  24. I : integer;
  25. begin
  26. Fl := true;
  27. X := X1;
  28. Y := Y1;
  29. Case D of
  30. 1 : if X<A then X := A else Fl := false;
  31. 2 : if X>0 then X := 0 else Fl := false;
  32. 3 : if Y<B then Y := B else Fl := false;
  33. 4 : if Y>0 then Y := 0 else Fl := false;
  34. 5 : if (X>0)AND(Y<B) then
  35. begin
  36. Y := Y + X;
  37. X := 0;
  38. if Y > B then
  39. begin
  40. X := Y - B;
  41. Y := B;
  42. end
  43. end else Fl := false;
  44. 6 : if (Y>0)AND(X<A) then
  45. begin
  46. X := X + Y;
  47. Y := 0;
  48. if X > A then
  49. begin
  50. Y := X - A;
  51. X := A;
  52. end
  53. end else Fl := false;
  54. end;
  55. Delaem := Fl;
  56. end;
  57.  
  58. procedure Rec(X,Y : byte);
  59. var i,X1,Y1 : byte;
  60. begin
  61. Inc(RR);
  62. for i:= 1 to 6 do
  63. begin
  64. if (Delaem(i,X,Y,X1,Y1)) then
  65. begin
  66. if (NOT Est(MK,KK,X1,Y1)) then
  67. begin
  68. Inc(KK);
  69. MK[1,KK] := X1;
  70. MK[2,KK] := Y1;
  71. end;
  72.  
  73. if NOT Est(MO,KO,X1,Y1) then
  74. begin
  75. Inc(KO);
  76. MO[1,KO] := X1;
  77. MO[2,KO] := Y1;
  78. Rec(X1,Y1);
  79.  
  80. end;
  81. end;
  82.  
  83. end;
  84. Dec(RR);
  85. end;
  86.  
  87. begin
  88. RR := 0;
  89. MK[1,1] := 0;
  90. MK[2,1] := 0;
  91. KK := 1;
  92. MO[1,1] := 0;
  93. MO[2,1] := 0;
  94. KO := 1;
  95.  
  96. ReadLn(A,B);
  97. Rec(0,0);
  98. WriteLn(KK);
  99. ReadLn;
  100. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement