Statistics

Problem Statement for "Xscoregame"

Problem Statement

You have an array of integers: the int[] A. When you give the array to Hero, he will execute the following steps:
  1. At the beginning, he will set the variable X to zero.
  2. For each element Y of A, in the given order, he will set X to (X + (X xor Y)).
  3. He will announce the final value of the variable X.
Before you give the array A to Hero, you are allowed to permute its elements arbitrarily. Compute and return the largest possible value that can be announced by Hero.

Definition

Class:
Xscoregame
Method:
getscore
Parameters:
int[]
Returns:
int
Method signature:
int getscore(int[] A)
(be sure your method is public)

Constraints

  • A will contain between 1 and 15 elements, inclusive.
  • Each element in A will be between 0 and 50, inclusive.

Examples

  1. {1,2,3}

    Returns: 12

    An optimal solution is to rearrange A into the order {3, 1, 2}. Given this array, Hero will perform the following steps: He will set X to zero. Then, he will set X to (0 + (0 xor 3)) = 3. Then, he will set X to (3 + (3 xor 1)) = 5. Finally, he will set X to (5 + (5 xor 2)) = 12, and he will announce the value 12.

  2. {10,0,0,0}

    Returns: 80

    Here an optimal solution is to leave the array in the original order. The variable X will have the values 0, 10, 20, 40, and finally 80.

  3. {1,1,1,1,1,1}

    Returns: 1

  4. {1,0,1,0,1,0,1,0}

    Returns: 170

  5. {50,0,1,0,1,0,1,0,1,0,1,0,1,0,1}

    Returns: 830122

  6. {44,16,3,33,34,35,44,44,25,48,16,32,37,8,33}

    Returns: 1046478

  7. {0,37,40,30,50,32}

    Returns: 2002

  8. {12,33,22}

    Returns: 172

  9. {1,1,0,1,1,0,1}

    Returns: 81

  10. {2,22,15,45,7,2,0,40,13,25,26,5,6}

    Returns: 252913

  11. {37,4,8,39,29,48,43,50,12,42}

    Returns: 32652

  12. {12,13,39,8,19,32,8,43,12,3,44,1,29,16,2}

    Returns: 1031604

  13. {11,13,12,6,12,9,2,11,12,17,17,14}

    Returns: 61299

  14. {18,48,39,16,30,32}

    Returns: 1898

  15. {31,5,7,26}

    Returns: 228

  16. {13,48,50,4}

    Returns: 460

  17. {15,17,29,1,14,29,12,38,34,2,22,45,32}

    Returns: 259933

  18. {19,35,33,35,26,6}

    Returns: 1891

  19. {40,32,41}

    Returns: 76

  20. {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}

    Returns: 0

  21. {0,2,7,1,8,2,8,0,8,2}

    Returns: 7528

  22. {0,0,0,1,1,0,1,1,1,1,1,1,0,1,0}

    Returns: 21841

  23. {36,38}

    Returns: 40

  24. {25,21,9,25,1,20,5,34,26}

    Returns: 12245

  25. {31,36,35,33,47,12,30,2}

    Returns: 8048

  26. {34,48}

    Returns: 66

  27. {2,0,1,2,2,0,1,2,2,2,2,2,0,1,2}

    Returns: 56148

  28. {8,4,1,25}

    Returns: 233

  29. {8,9,0,0,9,3,7,0,1,3,4,8,6,2,5}

    Returns: 256950

  30. {3,3,4,3,4,1,2,4,4,2,1,4,3,0,2}

    Returns: 121716

  31. {13,11,30,9,22,2}

    Returns: 990

  32. {28,24,10,45,47,47,35,29,12}

    Returns: 16172

  33. {22,13,42,26,40,19,27,50,4,11,8,35,27,21,15}

    Returns: 1047987

  34. {45,28,0,37,23,26}

    Returns: 1970

  35. {11,2,1,5,10,2}

    Returns: 460

  36. {17,7,8,17,1,12,5,7,14,17}

    Returns: 15575

  37. {8,5,7,2,7,11,9,7,4,7,8,5,9,7,0}

    Returns: 259911

  38. {26,40,35,23,8,46,11}

    Returns: 3982

  39. {49,31,29,25}

    Returns: 351

  40. {4,38,26,43,0,20,34,5,19,14,37,31,26,37,0}

    Returns: 1044213

  41. {19,2,0,37,10,26,10,7,20,15,26,27,43,8,14}

    Returns: 1015410

  42. {1,1,0,1,1,1,0,1,0,0,0,1,0,1,1}

    Returns: 21841

  43. {31,7,32,28,43}

    Returns: 951

  44. {16,30,44,44,19,44,19,38,5,36,1,46,10,13,47}

    Returns: 1044432

  45. {8,10,28,29,0,8,50,46,13,2,27,39,39,48,25}

    Returns: 1047528

  46. {22,3,25,4}

    Returns: 232

  47. {9,6,1,9,3,1,9,8,2,1,8,9,0,5,5}

    Returns: 245457

  48. {31,7,9,20,17,30,14,1,24}

    Returns: 8109

  49. {5,6,35,44,7,20}

    Returns: 1720

  50. {2,30}

    Returns: 58

  51. {0,28,14}

    Returns: 110

  52. {33,7,43,6}

    Returns: 423

  53. {48,4,27,1,26,42,20,45,31,15,16,18,35,38,20}

    Returns: 1048213

  54. {35,21,37,17,31,17,26,26,25,3,34,32,2,26,2}

    Returns: 1040101

  55. {15,39,31,49,24,36,36,16,12,38,29,38,23,6,19}

    Returns: 1048294

  56. {3,2,2}

    Returns: 10

  57. {41,12,17,28,18,2,48,8,19,13,2,22,18,42,34}

    Returns: 1047234

  58. {4,28,18,45,31,14,30,15,44,5,19}

    Returns: 64410

  59. {0,33,26,42,20,3,43,23,45,1}

    Returns: 32301

  60. {13,25,15,24,12,18,13,0,3,26}

    Returns: 16241

  61. {2,1,2,2,2,2,0,0,1,2,1,0,1,0,0}

    Returns: 56096

  62. {30,15,18,41,8,23,41,41,6,28,21,0,48,36,40}

    Returns: 1047488

  63. {7,20,47,32,5,24,17,29,19,27,44}

    Returns: 65353

  64. {37,48,26,32,45,38,0}

    Returns: 4045

  65. {33,44,25,31,48,12,11,35,13,13,6,44,7}

    Returns: 260850

  66. {2,5,3,2,26,18,22,26,26,13,9,4,15,16,22}

    Returns: 523224

  67. {48,20,10,27,45,22,17,34,31,29,3,9,23,42,39}

    Returns: 1047981

  68. {18,1,10,30,0,47,39,34,20,48,48}

    Returns: 65338

  69. {31,9,32,1,4,4,28,20,24}

    Returns: 12252

  70. {15,20,4,12}

    Returns: 176

  71. {9,7,36}

    Returns: 167

  72. {6,40,2,12,36,26,1,15,15,40,35,50,45,17,17}

    Returns: 1047517

  73. {35,45,12,13,16}

    Returns: 914

  74. {36,9,21,11,22,31,21,9,24,8,15,5,20}

    Returns: 229289

  75. {4,4}

    Returns: 4

  76. {13,10,47,25,41,21,23,7,27,19,27,1,12,38,31}

    Returns: 1045484

  77. {43,9,22}

    Returns: 201

  78. {19,41,15,38,17,37,23,39,48,45,1}

    Returns: 65433

  79. {10,8,3,17,9,7,10,14,11,5,14,17,17,14,10}

    Returns: 507756

  80. {9,14,10,17}

    Returns: 205

  81. {22,18,0,22,9,3,13,6,19,21,0,22,19,10,14}

    Returns: 523200

  82. {8,31,34,49,20,44,45,44,31,24,17,2,38,22,8}

    Returns: 1047786

  83. {5,21,3,13}

    Returns: 185

  84. {11,20,37,24,32,32}

    Returns: 1931

  85. {3,18,35,18,14,36,42}

    Returns: 3811

  86. {5, 24, 31, 2, 0, 0 }

    Returns: 994

  87. {25, 6, 16, 48, 32, 5, 19, 43, 45, 2, 20, 18, 20, 16, 41 }

    Returns: 1047522

  88. {35, 5, 6, 34, 15, 35, 32 }

    Returns: 3019

  89. {49, 48, 47, 46, 45, 44, 43, 43, 41, 40, 39, 38, 37, 36, 35 }

    Returns: 982987

  90. {40, 48, 4, 15, 0, 22, 44, 36, 27, 24, 33, 1, 30, 43, 32 }

    Returns: 1047437

  91. {0, 37, 43, 44, 37, 12, 21, 43, 34, 35 }

    Returns: 32219

  92. {50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37, 36 }

    Returns: 1032136

  93. {41, 25, 6, 24, 33, 37, 15, 38, 15, 24, 13, 44, 2, 9, 8 }

    Returns: 1042383

  94. {29, 34, 40, 17, 16, 12, 0, 40, 20, 35, 5, 13, 27, 7, 29 }

    Returns: 1044121

  95. {24, 10, 44, 27, 2 }

    Returns: 882

  96. {8, 2, 7, 7, 4 }

    Returns: 183

  97. {33, 36, 27, 15, 43, 35, 36, 42, 49, 21, 12, 27 }

    Returns: 130793

  98. {1, 2, 2, 4, 5, 6, 7, 8, 9, 50, 11, 12, 13, 14, 15 }

    Returns: 1015784

  99. {16, 25, 35, 50 }

    Returns: 424

  100. {7, 4, 2, 1 }

    Returns: 54

  101. {34, 27, 32, 42, 48, 43, 5, 30 }

    Returns: 8122

  102. {4, 5, 8 }

    Returns: 40

  103. {1, 2, 18, 21, 30, 33, 34, 40, 40, 47 }

    Returns: 32565

  104. {42, 42, 37 }

    Returns: 82

  105. {28, 8, 19 }

    Returns: 98

  106. {5, 10, 10 }

    Returns: 50

  107. {50, 13, 50, 13, 50, 0, 50, 13, 50, 13, 50, 13, 50, 13, 50 }

    Returns: 1040260

  108. {2, 7, 2, 3, 1, 6, 6, 6, 1 }

    Returns: 1976

  109. {6, 4, 7 }

    Returns: 23

  110. {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }

    Returns: 262114

  111. {20, 33, 10, 45, 2, 42, 17, 3, 30, 27, 7, 22, 32, 36, 7 }

    Returns: 1046124

  112. {0, 19, 17, 5, 39, 16, 40, 4 }

    Returns: 7414

  113. {24, 47, 7, 17, 25, 42, 47, 33, 2, 45, 23 }

    Returns: 64977

  114. {5, 19, 28 }

    Returns: 94

  115. {2, 9, 20, 18, 19 }

    Returns: 466

  116. {8, 13, 13, 5, 9, 7, 5 }

    Returns: 965

  117. {1, 3, 4, 5, 8, 8, 14, 18, 20, 22, 28, 31, 39 }

    Returns: 229350

  118. {4, 8, 16, 17, 18, 19, 20, 21, 22, 23, 24 }

    Returns: 32615

  119. {34, 35, 44, 44, 25, 48, 16, 32 }

    Returns: 8096

  120. {1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 11, 12, 13, 14, 15 }

    Returns: 262128

  121. {0, 4, 4, 4, 1 }

    Returns: 86

  122. {41, 17, 34, 0 }

    Returns: 418

  123. {17, 41, 1, 4, 45, 1, 41, 8, 29, 26 }

    Returns: 31601

  124. {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }

    Returns: 262128

  125. {43, 20, 1, 4, 11, 13 }

    Returns: 1766

  126. {8, 7, 0, 0, 1, 6 }

    Returns: 376

  127. {18, 47, 40, 38, 14, 45, 41, 27, 17, 32 }

    Returns: 32654

  128. {49, 9, 34, 32, 37, 37, 48, 45, 19, 5, 31, 20, 19, 29 }

    Returns: 524053

  129. {1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 }

    Returns: 262037

  130. {2, 1, 2, 5, 10, 4, 8, 2, 19, 1, 4 }

    Returns: 24497

  131. {20, 32, 31, 42, 40, 50, 34, 48, 2, 19, 13, 27, 44, 46, 47 }

    Returns: 1048035

  132. {12, 24, 34, 45, 22, 23, 32, 21, 23, 44, 14, 11, 37, 13, 25 }

    Returns: 1046256

  133. {35, 9, 21, 50 }

    Returns: 429

  134. {23, 36, 21, 45, 24, 22, 20 }

    Returns: 4009

  135. {14, 13, 12, 45, 27, 7, 34, 19, 23, 43, 22, 29, 43, 34, 37 }

    Returns: 1047527

  136. {15, 26, 6, 27, 30, 21 }

    Returns: 987

  137. {33, 34, 35, 36, 37, 38, 39, 40, 16, 42, 1, 2 }

    Returns: 130869

  138. {37, 4, 5, 23, 16, 11, 33, 29, 5, 22 }

    Returns: 28601

  139. {48, 39, 34, 26, 3, 45, 46, 32 }

    Returns: 8135

  140. {7, 9, 12, 18, 20, 44, 50, 0, 1, 9, 10, 22 }

    Returns: 129838

  141. {41, 11, 3, 18, 47 }

    Returns: 923

  142. {22, 22, 9, 22 }

    Returns: 214

  143. {50, 49, 48, 47, 46, 45, 44, 43, 7, 6, 5, 4, 3, 2, 1 }

    Returns: 1047025

  144. {43, 31, 36, 30, 47, 50, 39 }

    Returns: 4044

  145. {36, 35, 38, 26, 46, 11, 12, 32, 36, 4, 34, 38, 5, 15, 49 }

    Returns: 1044406

  146. {7, 49, 23, 8, 30, 22, 44, 28, 23, 9, 40, 15, 42, 42, 37 }

    Returns: 1047911

  147. {0, 3, 2 }

    Returns: 11

  148. {7, 7, 1, 2, 6 }

    Returns: 119

  149. {21, 43, 50, 31, 48, 37, 26, 35, 7, 13, 19, 41, 33, 23, 17 }

    Returns: 1048285

  150. {31, 3, 8, 9, 10 }

    Returns: 491

  151. {31, 9, 6, 25, 4, 28, 14, 44, 12, 37, 4, 26, 23, 40, 45 }

    Returns: 1043957

  152. {19, 24, 28, 8 }

    Returns: 226

  153. {25, 5, 21, 33, 15, 20, 19, 29, 0, 6, 30, 29, 40, 47, 24 }

    Returns: 1047791

  154. {18, 45, 47, 26, 21, 38, 19 }

    Returns: 4049

  155. {6, 1, 6, 0 }

    Returns: 56

  156. {0, 2, 3, 5, 4, 0, 2, 3, 5, 4, 0, 2, 3, 5, 4 }

    Returns: 126810

  157. {7, 9, 12, 18, 20, 44, 50, 0, 1, 9, 10, 22, 49, 17, 21 }

    Returns: 1046229

  158. {16, 22, 41, 43, 3, 50, 16, 2, 16, 26, 48, 12, 38, 38 }

    Returns: 523480

  159. {40, 32, 41, 31, 32, 45, 37, 29, 25, 49, 36, 38, 36, 30, 28 }

    Returns: 1048287

  160. {14, 19, 49, 22, 35, 46, 39, 17 }

    Returns: 8080


This problem statement is the exclusive and proprietary property of TopCoder, Inc. Any unauthorized use or reproduction of this information without the prior written consent of TopCoder, Inc. is strictly prohibited. (c)2024, TopCoder, Inc. All rights reserved.
This problem was used for: