(вопрос) Длинное нажатое имя:
Ваш друг печатает свое имя на клавиатуре. Иногда при вводе символа c клавиша может долго нажиматься, и символ будет набираться 1 или более раз.
Вы просматриваете набранные символы клавиатуры. Верните True, если возможно, что это было имя вашего друга, с некоторыми символами (возможно, ни с одним), которые долго нажимались.
My Doubt: : я пытался решить этот вопрос с помощью c ++ STL карт но я получаю неправильный ответ для этого теста: name = "saeed"
typed = "ssaaedd"
вот мой код:
bool isLongPressedName(string name, string typed) {
unordered_map<char,int>m1,m2;
for(int i=0;i<name.size();i++)
{
m1[name[i]]++;
}
for(int i=0;i<typed.size();i++)
{
m2[typed[i]]++;
}
if(m2.size()!=m1.size()) return false;
int b=0;
for(int a=0;a<m2.size();a++)
{
if(typed[a]!=name[b] ||m2[typed[a]]<m1[name[b]] )
{
return false;
}
if(m2[typed[a]]>m1[name[b]])
{
return true;
}
b++;
}
return true;
Пожалуйста, помогите мне решить эту проблему.