배열의 숫자가 수직 및 수평으로 180도 회전한 후 배열에도 존재하는 다른 숫자로 바뀌면 혼란스러울 수 있습니다. 예를 들어 6을 수직과 수평으로 180도 회전하면 9가 되고 그 반대도 마찬가지입니다.
우리는 0, 1, 6, 8, 9의 회전만이 유효한 결과를 낳는다는 것을 기억해야 합니다.
자연수 num을 첫 번째이자 유일한 매개변수로 받아들이는 JavaScript 함수를 작성해야 합니다. 함수는 먼저 num까지의 모든 자연수를 포함하는 배열을 구성해야 합니다.
예를 들어 num = 5인 경우 배열은 -
[1, 2, 3, 4, 5]
이어야 합니다. 그런 다음 함수는 배열에 혼동되는 숫자가 몇 개 있는지 계산하고 결국 그 수를 반환해야 합니다.
예를 들어 -
입력이 -
const num = 10;
인 경우 배열은 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10이므로 출력은 -
const output = 5;
여야 합니다. ] 사람들을 혼란스럽게 합니다. 숫자는 -
1, 6, 8, 9, 10
코드는 -
라이브 데모
const num = 10; const countConfusing = (num = 1) => { let count = 0; const valid = '01689'; const rotateMap = {'0': '0', '1': '1', '6': '9', '8': '8', '9': '6'}; const prepareRotation = num => { let res = ''; const numArr = String(num).split(''); if(numArr.some(el => !valid.includes(el))){ return false; }; numArr.map(el => { res = rotateMap[el] + res; }); return +res; }; for(let i = 1; i <= num; i++){ const rotated = prepareRotation(i); if(rotated && rotated > 0 && rotated <= num){ count++; }; }; return count; }; console.log(countConfusing(num));
콘솔의 출력은 -
5
위 내용은 JavaScript 배열에서 혼동되는 숫자 찾기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!