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

JavaScript에서 모든 고유 숫자가 있는 n자리 숫자 계산

<시간/>

문제

우리는 숫자, 예를 들어 num을 유일한 인수로 취하는 JavaScript 함수를 작성해야 합니다. 함수는 num 자릿수가 있고 모든 자릿수가 고유한 모든 숫자를 계산해야 합니다.

예를 들어, 함수에 대한 입력이 -

인 경우
const num = 1;

그러면 출력은 다음과 같아야 합니다. -

const output = 10;

출력 설명:

숫자 0, 1, 2, 3, 4, 5, 6, 7, 8, 9는 모두 1자리이며 모두 고유합니다.

예시

이에 대한 코드는 -

const num = 1;
const uniqueDigits = (num = 1) => {
   const dp = [1, 10];
   const sum = [1, 11];
   for (let i = 2; i <= num; i++) {
      dp[i] = sum[i - 1] + (10 - i) * (dp[i - 1]);
      sum[i] = sum[i - 1] + dp[i];
   };
   return dp[num];
};
console.log(uniqueDigits(num));
console.log(uniqueDigits(2));
console.log(uniqueDigits(3));

코드 설명:

여기에서 원하는 숫자를 추적하기 위해 동적 프로그래밍을 사용했습니다.

출력

콘솔의 출력은 -

10
91
739