fork download
  1. #include <cstdio>
  2. #include <algorithm>
  3.  
  4. void
  5. bbb (int a[])
  6. {
  7. int i, j;
  8. unsigned long long sum[1024] = {0};
  9.  
  10. for (i = 0; i < 1024; i++) {
  11. for (j = 0; j < 10; j++) {
  12. if (i & (1 << j))
  13. sum[i] += a[j];
  14. }
  15. sum[i] <<= 10;
  16. sum[i] |= i;
  17. }
  18. std::sort (sum, sum + 1024);
  19. for (i = 0; i < 1023; i++) {
  20. if ((sum[i] >> 10) == (sum[i + 1] >> 10) && ((sum[i] & 0x3ff) & (sum[i + 1] & 0x3ff)) == 0) {
  21. printf ("(");
  22. for (j = 0; j < 10; j++) {
  23. if ((sum[i] & 0x3ff) & (1 << j))
  24. printf (" %d", a[j]);
  25. }
  26. printf (") (");
  27. for (j = 0; j < 10; j++) {
  28. if ((sum[i + 1] & 0x3ff) & (1 << j))
  29. printf (" %d", a[j]);
  30. }
  31. printf (") %llu\n", sum[i] >> 10);
  32. break;
  33. }
  34. }
  35. if (i == 1023)
  36. printf ("---------\n");
  37. }
  38.  
  39. int
  40. main ()
  41. {
  42. int a[][10] = {
  43. {76, 468, 871, 1492, 1544, 1829, 2134, 2653, 3498, 3993},
  44. {357, 431, 2242, 2470, 3312, 4312, 4389, 4575, 4659, 4776},
  45. {1168, 1702, 2144, 2417, 2600, 3322, 3395, 3426, 3682, 3956},
  46. {106, 667, 1289, 2431, 2535, 2613, 2641, 4123, 4325, 4722},
  47. {726, 1433, 1972, 2583, 3847, 3867, 4232, 4536, 4784, 4844},
  48. {312, 411, 1400, 1708, 1749, 1802, 1850, 1965, 4585, 4853},
  49. {30, 706, 1675, 1702, 2432, 3819, 4019, 4228, 4436, 4637},
  50. {646, 818, 1703, 2340, 2545, 2921, 3007, 3767, 4085, 4598},
  51. {139, 163, 194, 1144, 2584, 2871, 3144, 3594, 3648, 4976},
  52. {63, 70, 269, 949, 1337, 2670, 3538, 3764, 4183, 4320}
  53. };
  54. bbb (a[0]);
  55. bbb (a[1]);
  56. bbb (a[2]);
  57. bbb (a[3]);
  58. bbb (a[4]);
  59. bbb (a[5]);
  60. bbb (a[6]);
  61. bbb (a[7]);
  62. bbb (a[8]);
  63. bbb (a[9]);
  64. }
  65.  
  66.  
Success #stdin #stdout 0s 4516KB
stdin
Standard input is empty
stdout
( 1544 2653 3498) ( 76 1492 2134 3993) 7695
( 2242 3312 4312) ( 431 4659 4776) 9866
( 2600 3395 3426) ( 2417 3322 3682) 9421
( 106 2535) ( 2641) 2641
---------
( 1708 1802 1850 1965) ( 312 411 1749 4853) 7325
( 1675 1702 4019) ( 30 706 2432 4228) 7396
---------
( 163 2871 3144) ( 2584 3594) 6178
( 63 70 269 1337 2670 3538) ( 3764 4183) 7947