4030. Check ASCII Palindromic
Description
You are given a string s consisting of lowercase English letters.
Construct a binary string by replacing each character in s with the 8-bit binary representation of its ASCII value, including leading zeros, while preserving the original order of the characters.
Return true if the resulting binary string is a palindrome. Otherwise, return false.
Β
Example 1:
Input: s = "ff"
Output: true
Explanation:
- The ASCII value of
fis 102, whose 8-bit binary representation is01100110. - Thus, the binary string is
0110011001100110. - Since this binary string is a palindrome, the output is
true.
Example 2:
Input: s = "leet"
Output: false
Explanation:
- The ASCII values of
l,e,e, andtare 108, 101, 101, and 116, respectively. - Their 8-bit binary representations are
01101100,01100101,01100101, and01110100. - Thus, the binary string is
01101100011001010110010101110100. - Since this binary string is not a palindrome, the output is
false.
Β
Constraints:
1 <= s.length <= 100sconsists of lowercase English letters.
Solutions
Solution 1: Simulation
Following the problem statement, we replace each character of \(s\) with the \(8\)-bit binary representation of its ASCII value (including leading zeros), concatenate them in order to obtain a binary string \(t\), and then check whether \(t\) is a palindrome.
The time complexity is \(O(n)\) and the space complexity is \(O(n)\), where \(n\) is the length of \(s\).
1 2 3 4 | |
1 2 3 4 5 6 7 8 9 10 | |
1 2 3 4 5 6 7 8 9 10 11 12 | |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | |
1 2 3 4 | |