Số Doubleton
Một số tự nhiên gọi là "doubleton number" nếu nó chứa đúng hai chữ số khác nhau. Ví dụ: 23, 35, 100, 12121 là doubleton; 123 và 9980 không phải.
Mô tả vấn đề
Viết hàm JavaScript nhận vào số, trả về true nếu là doubleton, ngược lại false.
Ví dụ minh họa
Mã thực hiện (dùng Set/Object đếm chữ số khác nhau):
const num = 121212;
const isDoubleTon = (num = 1) => {
const str = String(num);
const map = {};
for(let i = 0; i < str.length; i++){
const el = str[i];
if(!map.hasOwnProperty(el)){
map[el] = true;
};
};
const props = Object.keys(map).length;
return props === 2;
};
console.log(isDoubleTon(num));Đầu ra
Kết quả trong console:
true