fork download
  1. #include <iostream>
  2. #include <cstdlib>
  3. using namespace std;
  4. const int N=1001;
  5.  
  6. int main() {
  7. int a[4];
  8. int ans=N;
  9. int b[4];
  10. for (int i=0;i<=N;i++)
  11. for (int j=i; N-i-j >= j;j++) {
  12. a[0]=i;
  13. a[1]=j;
  14. a[2]=N-i-j;
  15. a[3]=0;
  16. int cur=0;
  17. for (int k=1;k<=N;k++) {
  18. int bst=N;
  19. for (int m=1;m<16;m++) {
  20. int sum = 0;
  21. for (int l=0;l<4;l++)
  22. if ((m>>l)&1) sum+=a[l];
  23. bst = min(bst, abs(sum - k));
  24. }
  25. cur = max(cur, bst);
  26. }
  27. if (ans > cur) {
  28. ans = cur;
  29. b[0]=a[0];b[1]=a[1];b[2]=a[2];b[3]=a[3];
  30. }
  31. }
  32. cout << ans << endl << b[0] << ' ' << b[1] << ' ' << b[2] << endl;
  33. }
  34.  
Success #stdin #stdout 12.24s 2680KB
stdin
Standard input is empty
stdout
71
143 286 572