Dennnhhhickk

1

Sep 29th, 2016
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.05 KB | None | 0 0
  1. program k22;
  2.  
  3. {$APPTYPE CONSOLE}
  4.  
  5. uses
  6. SysUtils;
  7.  
  8. const
  9. MAXIN = 100;
  10.  
  11. var
  12. b: array [0..MAXIN] of integer;
  13. i, n, m, a1, j: integer;
  14.  
  15. procedure clean();
  16. var
  17. i: integer;
  18. begin
  19. for i := 1 to MAXIN do
  20. b[j] := 0;
  21. end;
  22.  
  23. function sum(): int64;
  24. var
  25. sum1: int64;
  26. i: integer;
  27. begin
  28. sum1 := 0;
  29. for i := 1 to m do
  30. sum1 := sum1 + b[i];
  31. sum := sum1 * 2;
  32. end;
  33.  
  34. function find(n: integer): integer;
  35. var
  36. a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a13, a14, a15, min, time: integer;
  37. begin
  38. if (sum < n) then
  39. find := -1
  40. else
  41. begin
  42. min := MAXIN;
  43. for a15 := 0 to 2 do
  44. for a14 := 0 to 2 do
  45. for a13 := 0 to 2 do
  46. for a12 := 0 to 2 do
  47. for a11 := 0 to 2 do
  48. for a10 := 0 to 2 do
  49. for a9 := 0 to 2 do
  50. for a8 := 0 to 2 do
  51. for a7 := 0 to 2 do
  52. for a6 := 0 to 2 do
  53. for a5 := 0 to 2 do
  54. for a4 := 0 to 2 do
  55. for a3 := 0 to 2 do
  56. for a2 := 0 to 2 do
  57. for a1 := 0 to 2 do
  58. if (a1 * b[1] + a2 * b[2] + a3 * b[3] + a4 * b[4] + a5 * b[5] + a6 * b[6] + a7 * b[7] + a8 * b[8] + a9 * b[9] + a10 * b[10] + a11 * b[11] + a12 * b[12] + a13 * b[13] + a14 * b[14] + a15 * b[15] = n) then
  59. begin
  60. time := a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8 + a9 + a10 + a11 + a12 + a13 + a14 + a15;
  61. if (time < min) then
  62. begin
  63. min := time;
  64. //writeln(time);
  65. end;
  66. end;
  67. if (min <> MAXIN) then
  68. find := min
  69. else
  70. find := 0;
  71. end;
  72. end;
  73.  
  74. begin
  75. read(n, m);
  76. clean();
  77.  
  78. for i := 1 to m do
  79. read(b[i]);
  80.  
  81. writeln(find(n));
  82. readln;
  83. readln;
  84. end.
Advertisement
Add Comment
Please, Sign In to add comment