802G - Fake News (easy) - CodeForces Solution


implementation strings *800

Please click on ads to support us..

Python Code:

a='heidi'
s=input()
j=0
for i in range(len(s)):
    if s[i]==a[j]:
        j+=1 
        if j==5:
            break
if j==5:
    print('YES')
else:
    print('NO')

C++ Code:

#include <bits/stdc++.h>
using namespace std;

int main()
{
    string s;
    cin >> s;
    unordered_map<char,vector<int>>mp;
    for(int i = 0;i < s.length(); i++)
    {
        if(s[i] == 'h' || s[i] == 'e' || s[i] == 'i' || s[i] == 'd')
        {
            mp[s[i]].push_back(i);
        }
    }
    bool isvalid = true;
    if(mp.find('h') == mp.end() || mp.find('e') == mp.end() || mp.find('i') == mp.end() || mp.find('d') == mp.end())
    {
        cout<<"NO"<<endl;
        return 0;
    }
    int ind = mp['h'][0];
    if(lower_bound(mp['e'].begin(),mp['e'].end(),ind) == mp['e'].end())
    {
        cout<<"NO"<<endl;
        return 0;
    }else
    {
        ind = *lower_bound(mp['e'].begin(),mp['e'].end(),ind);
    }
    if(lower_bound(mp['i'].begin(),mp['i'].end(),ind) == mp['i'].end())
    {
        cout<<"NO"<<endl;
        return 0;
    }else
    {
        ind = *lower_bound(mp['i'].begin(),mp['i'].end(),ind);
    }
    if(lower_bound(mp['d'].begin(),mp['d'].end(),ind) == mp['d'].end())
    {
        cout<<"NO"<<endl;
        return 0;
    }else
    {
        ind = *lower_bound(mp['d'].begin(),mp['d'].end(),ind);
    }
    if(lower_bound(mp['i'].begin(),mp['i'].end(),ind) == mp['i'].end())
    {
        cout<<"NO"<<endl;
        return 0;
    }else
    {
        ind = *lower_bound(mp['i'].begin(),mp['i'].end(),ind);
    }
    cout<<"YES"<<endl;
    return 0;
}


Comments

Submit
0 Comments
More Questions

1006A - Adjacent Replacements
1195C - Basketball Exercise
1206A - Choose Two Numbers
1438B - Valerii Against Everyone
822A - I'm bored with life
9A - Die Roll
1430B - Barrels
279B - Books
1374B - Multiply by 2 divide by 6
1093B - Letters Rearranging
1213C - Book Reading
1468C - Berpizza
1546B - AquaMoon and Stolen String
1353C - Board Moves
902A - Visiting a Friend
299B - Ksusha the Squirrel
1647D - Madoka and the Best School in Russia
1208A - XORinacci
1539B - Love Song
22B - Bargaining Table
1490B - Balanced Remainders
264A - Escape from Stones
1506A - Strange Table
456A - Laptops
855B - Marvolo Gaunt's Ring
1454A - Special Permutation
1359A - Berland Poker
459A - Pashmak and Garden
1327B - Princesses and Princes
1450F - The Struggling Contestant