--- id: 5a23c84252665b21eecc7edb title: Largest int from concatenated ints challengeType: 5 forumTopicId: 302298 --- ## Description
Given a set of positive integers, write a function to order the integers in such a way that the concatenation of the numbers forms the largest possible integer and return this integer.
## Instructions
## Tests
```yml tests: - text: maxCombine should be a function. testString: assert(typeof maxCombine == 'function'); - text: maxCombine([1, 3, 3, 4, 55]) should return a number. testString: assert(typeof maxCombine([1, 3, 3, 4, 55]) == 'number'); - text: maxCombine([1, 3, 3, 4, 55]) should return 554331. testString: assert.equal(maxCombine([1, 3, 3, 4, 55]), 554331); - text: maxCombine([71, 45, 23, 4, 5]) should return 71545423. testString: assert.equal(maxCombine([71, 45, 23, 4, 5]), 71545423); - text: maxCombine([14, 43, 53, 114, 55]) should return 55534314114. testString: assert.equal(maxCombine([14, 43, 53, 114, 55]), 55534314114); - text: maxCombine([1, 34, 3, 98, 9, 76, 45, 4]) should return 998764543431. testString: assert.equal(maxCombine([1, 34, 3, 98, 9, 76, 45, 4]), 998764543431); - text: maxCombine([54, 546, 548, 60]) should return 6054854654. testString: assert.equal(maxCombine([54, 546, 548, 60]), 6054854654); ```
## Challenge Seed
```js function maxCombine(xs) { } ```
## Solution
```js function maxCombine(xs) { return parseInt( xs .sort(function(x, y) { var a = x.toString(), b = y.toString(), ab = parseInt(a + b), ba = parseInt(b + a); return ab > ba ? -1 : ab < ba ? 1 : 0; }) .join(''), 10 ); } ```