Leetcode/LeetCode75

[Two Pointers][Easy] 392. Is Subsequence

자전거통학 2023. 12. 1. 04:43

https://leetcode.com/problems/is-subsequence

 

Is Subsequence - LeetCode

Can you solve this real interview question? Is Subsequence - Given two strings s and t, return true if s is a subsequence of t, or false otherwise. A subsequence of a string is a new string that is formed from the original string by deleting some (can be n

leetcode.com

 

Q. 입력문자 t의 일부만 제거하되, 순서 변경없이 입력문자 s를 구성할수 있는지 여부를 반환하라.

 

Solution. 

 직관대로 같은 문자를 만났을 때 마다 s의 현재 index를 증가시키는 방법 만으로도 O(N) TC를 얻을 수 있다. 

t와 s, 두개의 문자열에 대해 값 조회를 하므로 two pointer sector에 있는 문제. tag대로 easy 문제.

 

bool isSubsequence(string s, string t)
{
    int idxS = 0;
    for (int k = 0; k < t.size(); ++k)
    {
        if (t[k] == s[idxS])
        {
            ++idxS;
            if (idxS >= s.size())	return true;
        }
    }
    return idxS==s.size();
}