[7kyu]Counting in the Amazon

該算法題來自于 codewars【語言: javascript】,翻譯如有誤差,敬請諒解~

  • 場景
    • 阿拉拉是亞馬遜中一個孤立的部落,成對計數(shù)。
  • 例如1到8如下計數(shù):
    1 = anane
    2 = adak
    3 = adak anane
    4 = adak adak
    5 = adak adak anane
    6 = adak adak adak
    7 = adak adak adak anane
    8 = adak adak adak adak
  • 任務
  • 傳入一個的數(shù)值,返回以該部落計數(shù)方式的數(shù)值。
  • 例如:
    countArara(3) 'adak anane
    countArara(8) 'adak adak adak adak'

  • 解答
  • 其一
const countArara = n => {
      let str = new Array(Math.trunc(n/2)).fill('adak').join(' ');
      return (n/2 + '').indexOf('.') > 0 ? (!str ? 'anane' : str + ' anane') : str
}
  • 其二
function countArara(n) {
      switch (n) {
        case 0:  return '';
        case 2:  return 'adak';
        default: return 'adak ' + countArara(n-2);
      }
}
  • 其三
function countArara(n) {
      var count = [];
      for (var i = 2; i <= n; i+=2) {
        count.push("adak");
      }
      if (n % 2 != 0)  count.push("anane");    
      return count.join(" ");
}
  • 其四
var one = "anane";
var two = "adak";
function countArara(n) { 
      if(n==1) return one; 
      if(n==2) return two;
      else return two + " " + countArara(n-2); 
}
  • 其五
function countArara(n) {
      return new Array(Math.ceil(n/2)).join('adak ')  + (n%2 ?  'anane' : 'adak');
}
  • 其六
const countArara = n => (Array(parseInt(n/2) + 1).join("adak ") + (n % 2 ? "anane" : "")).trim();
  • 其七
const countArara = (n) => n > 2 ? "adak " + countArara(n - 2) : n == 2 ? "adak" : "anane"
  • 其八
function countArara(n) {
      let out = Array(...Array(Math.floor(n / 2))).map(_ => 'adak');
      if(n & 1) out.push('anane');
      return out.join(' ');
}
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 背景 一年多以前我在知乎上答了有關LeetCode的問題, 分享了一些自己做題目的經(jīng)驗。 張土汪:刷leetcod...
    土汪閱讀 12,936評論 0 33
  • 不支持上傳文件,所以就復制過來了。作者信息什么的都沒刪。對前端基本屬于一竅不通,所以沒有任何修改,反正用著沒問題就...
    全棧在路上閱讀 2,074評論 0 2
  • 單例模式 適用場景:可能會在場景中使用到對象,但只有一個實例,加載時并不主動創(chuàng)建,需要時才創(chuàng)建 最常見的單例模式,...
    Obeing閱讀 2,321評論 1 10
  • 工廠模式類似于現(xiàn)實生活中的工廠可以產(chǎn)生大量相似的商品,去做同樣的事情,實現(xiàn)同樣的效果;這時候需要使用工廠模式。簡單...
    舟漁行舟閱讀 8,140評論 2 17
  • 知識儲備1.1 AFNetworking 是一個輕量級的iOS 網(wǎng)絡通信類庫1.2 AFNetworing 基于 ...
    稻草田閱讀 907評論 0 3

友情鏈接更多精彩內(nèi)容