Advertisement
Guest User

Untitled

a guest
Sep 24th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.58 KB | None | 0 0
  1. program Project3;
  2.  
  3. {$APPTYPE CONSOLE}
  4.  
  5. uses
  6. SysUtils;
  7.  
  8. var
  9. a: array [1..100] of int64;
  10. i, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, j, n, m: integer;
  11. x, y, min, sum: int64;
  12.  
  13. begin
  14. readln(m, n);
  15. sum := 0;
  16. min := 10000000000000000;
  17. for i := 1 to n do begin
  18. read(a[i]);
  19. sum := sum + a[i];
  20. end;
  21. for i := n + 1 to 15 do
  22. a[i] := 0;
  23. for i := 0 to 2 do
  24. for i1 := 0 to 2 do
  25. for i2 := 0 to 2 do
  26. for i3 := 0 to 2 do
  27. for i4 := 0 to 2 do
  28. for i5 := 0 to 2 do
  29. for i6 := 0 to 2 do
  30. for i7 := 0 to 2 do
  31. for i8 := 0 to 2 do
  32. for i9 := 0 to 2 do
  33. for i10 := 0 to 2 do
  34. for i11 := 0 to 2 do
  35. for i12 := 0 to 2 do
  36. for i13 := 0 to 2 do
  37. for i14 := 0 to 2 do begin
  38. x := a[1] * i + a[2] * i1 + a[3] * i2 + a[4] * i3 + a[5] * i4 + a[6] * i5 + a[7] * i6 + a[8] * i7 + a[9] * i8 + a[10] * i9 + a[11] * i10 + a[12] * i11 + a[13] * i12 + a[14] * i13 + a[15] * i14;
  39. y := i + i1 + i2 + i3 + i4 + i5 + i6 + i7 + i8 + i9 + i10 + i11 + i12 + i13 + i14;
  40. if((m = x) and (min >= y)) then
  41. min := y;
  42. end;
  43. end;
  44. if (min <> 10000000000000000) then
  45. writeln(min)
  46. else if (sum * 2 < m) then
  47. writeln(-1)
  48. else
  49. writeln(0);
  50.  
  51. readln;readln;
  52. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement