プログラマ-最大数


質問する



解法

  • mapで各要素を文字列に変換します.
  • sort(a,b)=>(b+a)-(a+b)
    ex)「303」「330」と比較し、正水面の位置から負水面の変位判断を行う.
  • 0番目が0である場合、異常処理
  • として文字列0が返される.

    コード#コード#

    function solution(numbers) {
      const answer = numbers.map(c=> c + '').sort((a,b) => {
        return (b+a)-(a+b)
      }).join('');
    
      return answer[0]==='0'? '0' : answer;
    }
    
    solution([3,30,34,5,9]);