Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Đếm số palindrome có thể tạo từ chuỗi trong JavaScript

Viết hàm nhận chuỗi str và số num. Đếm số chuỗi palindrome độ dài chính xác num có thể tạo từ str.

Ví dụ: str='ij', num=4 → 4 ('iiii','jjjj','ijji','jiij').

Cách tiếp cận: đếm ký tự duy nhất u. Nếu num chẵn: u^(num/2). Nếu lẻ: u^(num/2) * u.

Ví dụ

const str = 'ij';
const num = 4;
const findValidPalindromes = (str = '', num = 1) => {
  const set = new Set();
  for (let i = 0; i < str.length; i++) set.add(str[i]);
  const u = set.size;
  if (num & 1) return Math.pow(u, num / 2) * u;
  else return Math.pow(u, num / 2);
};
console.log(findValidPalindromes(str, num));

Kết quả

4