2024/07/10 3

[SlidingWindow][Medium] 567. Permutation in String

https://leetcode.com/problems/permutation-in-string/description/ 두개의 문장 s1과 s2가 주어질 때, s1의 permutation이 s2에 포함되어 있는지 여부를 반환하라.  문제자체는 간단하다. 다면 겹치는 경우에 대한 고려를 해야 한다.  따라서 유효하지 않는 경우, 즉 s1의 문자가 s2에 존재하지 않게 되면존재하도록 left를 당기도록 만들고 s1의 문자를 제거한다.  모두 제거되면 s1에 대한 permutation이 있다고 판단할 수 있다. 코드 더보기bool checkInclusion(string s1, string s2) { map mapFreq; for (int k = 0; k   결과

Leetcode/NeetCode 2024.07.10

[SlidingWindow][Medium] 424. Longest Repeating Character Replacement

https://leetcode.com/problems/longest-repeating-character-replacement/description/ 대문자로 이루어진 문자열을 입력받을 때, k 만큼 이 문자를 다른 문자고 고칠 수 있다. 이때 구할 수 있는 최대 길이의 sub string의 길이를 찾아라.  생각보다 복잡한 문제.  우선 특정 구간이 있으면 구간내의 특정 문자의 최대 수가(구간 길이 - 최대문자수 >= k) 이어야만 유효한 구간 이라는 것이다. 따라서 이것을 이용 한다.  최대문자수는 각 단어의 수를 집계하고 그것들의 정렬을 사용한다. 구간 길이는 right - left + 1 이다.  이때 만족하지 않으면 다시 만족할때 까지 left를 당긴다. left 에 해당한 문자수를 줄인다.이것이..

Leetcode/NeetCode 2024.07.10