Số pandigital là số chứa tất cả 10 chữ số 0-9 ít nhất 1 lần.
Ví dụ
'47458892414'→ false (thiếu 0,3,6)'53657687691428890'→ true (có đủ 0-9)
Giải pháp
Mã triển khai:
const numStr1 = '47458892414';
const numStr2 = '53657687691428890';
const isPandigital = numStr => {
const digits = new Set(numStr);
return digits.size === 10 && [...digits].every(d => '0123456789'.includes(d));
// Hoặc đơn giản: return new Set(numStr).size === 10;
};
console.log(isPandigital(numStr1)); // false
console.log(isPandigital(numStr2)); // true
Kết quả
Đầu ra trong console:
false
true
Lưu ý: Chỉ cần kiểm tra new Set(str).size === 10 vì chuỗi chỉ chứa chữ số.