Viết hàm nearestPalindrome() nhận số n, trả về số đối xứng gần nhất.
Ví dụ: 264 → 262; 7834 → 7887.
Cách tiếp cận: chia số thành 2 nửa (theo độ dài), ghép nửa đầu với đảo ngược của nó.
Ví dụ
const findNearestPalindrome = num => { const strNum = String(num); const half = strNum.substring(0, Math.floor(strNum.length / 2)); const reversed = half.split('').reverse().join(''); const first = strNum.length % 2 === 0 ? half : strNum.substring(0, Math.ceil(strNum.length / 2)); return +(first + reversed);};console.log(findNearestPalindrome(235));console.log(findNearestPalindrome(23534));console.log(findNearestPalindrome(121));console.log(findNearestPalindrome(1221));console.log(findNearestPalindrome(45));Kết quả
Đầu ra trong console sẽ là:
232 23532 121 1221 44