Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

숫자 찾기, 입력 숫자와 곱하면 JavaScript에서 입력 숫자 생성

<시간/>

문제

abcd...(a, b, c, d...는 숫자임)로 작성된 양의 정수 n과 양의 정수 p

를 취하는 JavaScript 함수를 작성해야 합니다.
  • 양의 정수 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