查詢數字,當用輸入數字相乘時會在 JavaScript 中產生輸入數字


問題

要求編寫一個 JavaScript 函式,它接受一個寫成 abcd...(a、b、c、d... 為數字)的正整數 n 和一個正整數 p

  • 我們要找到一個正整數 k(如果存在),將以連續冪 p 累加 n 的數字總和等於 k * n。

換句話說 −

是否有整數 k 如 :(a ^ p + b ^ (p+1) + c ^(p+2) + d ^ (p+3) + ...) = n * k

如果是這種情況,我們會返回 k,如果不是則返回 -1。

例如

以下程式碼 −

 即時演示

const num = 695;
const p = 2;
const findDesiredNumber = (num, p) => {
   let sum = 0;
   let str = String(num);
   for(const char in str){
      sum += str[char] * p;
      p++;
   };
   return Number.isInteger(sum/num) ? sum/num : -1;
};
console.log(findDesiredNumber(num, p));

輸出

以下為控制檯輸出 −

-1

更新時間:19-Apr-2021

94 次瀏覽

開啟您的職業生涯

完成課程以獲得認證

開始行動
廣告
© . All rights reserved.