2024-02-13 Daily Challenge
Today I have done leetcode's February LeetCoding Challenge with cpp
.
February LeetCoding Challenge 13
Description
Find First Palindromic String in the Array
Given an array of strings words
, return the first palindromic string in the array. If there is no such string, return an empty string ""
.
A string is palindromic if it reads the same forward and backward.
Example 1:
Input: words = ["abc","car","ada","racecar","cool"] Output: "ada" Explanation: The first string that is palindromic is "ada". Note that "racecar" is also palindromic, but it is not the first.
Example 2:
Input: words = ["notapalindrome","racecar"] Output: "racecar" Explanation: The first and only string that is palindromic is "racecar".
Example 3:
Input: words = ["def","ghi"] Output: "" Explanation: There are no palindromic strings, so the empty string is returned.
Constraints:
1 <= words.length <= 100
1 <= words[i].length <= 100
words[i]
consists only of lowercase English letters.
Solution
bool isPalindrom(string word) {
auto it = word.begin();
auto rit = word.rbegin();
while(it != word.end()) {
if(*it != *rit) return false;
++it;
++rit;
}
return true;
}
class Solution {
public:
string firstPalindrome(vector<string>& words) {
for(auto word : words) {
if(isPalindrom(word)) return word;
}
return "";
}
};
// Accepted
// 266/266 cases passed (49 ms)
// Your runtime beats 54.9 % of cpp submissions
// Your memory usage beats 7.01 % of cpp submissions (30 MB)