[Leetcode][C++][난이도 Easy] Valid Parentheses
Leetcode의 난이도 easy 5번째 문제는 valid parentheses 입니다. 입력으로 주어지는 string s에는 오직 소괄호, 중괄호, 대괄호 기호들만 들어 있는데요, 이들이 서로 짝을 이루는 경우라면 true, 짝을 이루지 못하는 경우라면 false를 반환해야 합니다. 우선 문제 분석을 진행하겠습니다. Valid Parentheses 문제 분석 첫번째 예제에서는 s가 "()" 으로 주어졌네요. 이 경우, "(" 문자가 ")" 와 서로 쌍을 이루기 때문에, 최종 결과는 true가 됩니다. 두번째 예제에서는 s가 "()[]{}" 으로 주어졌습니다. 이 경우도 역시 각각의 "(", "[", "{" 기호가 ")", "]", "}" 기호와 쌍을 이루기 때문에, 역시 최종 결과는 true가 됩니다...
2022. 12. 10.
[Leetcode][C++][난이도 Easy] Longest Common Prefix
Longest Common Prefix 문제 분석 Leetcode의 난이도 easy 4번째 문제는 longest common prefix 입니다. 위 [사진 1]과 같이, 문자열들이 나열되어 있을 때, 공통적으로 나열된 접두사 (prefix) 문자열을 탐색하고 반환해주면 됩니다. 아래 Example 1에서 "flower", "flow", "flight"는 앞에 "fl" 이라는 접두사가 공통으로 들어가 있기 때문에, "fl"이 반환됩니다. Example 2의 경우, "dog", "racecar", "car" 이므로, 서로 공통으로 갖는 접두사가 없기 때문에 빈 string "" 을 반환해야 합니다. 문제의 조건인 constraints를 보니, 영어 소문자들로만 문자열 목록이 주어진다고 하네요. Longes..
2022. 12. 7.
[Leetcode][C++][난이도 Easy] Roman to Integer
Leetcode의 난이도 easy로 3번째 문제는 Roman to Integer입니다. 말 그대로, string 변수로 저장된 로마 숫자 기호들을 integer로 변환하는 문제인데요, 규칙을 파악하면 쉽게 해결할 수 있는 문제였습니다. 우선 문제 분석을 하고, 문제 해결을 위한 C++ 코드, 솔루션 코드 중 제일 많은 추천을 받은 코드를 순차적으로 살펴보겠습니다. Roman to Integer 문제 분석 문제의 핵심은 로마 기호 I, X, C가 주어진 로마 숫자 기호 string에서 어디에 위치하는지에 따라 다른 integer를 반환한다는 것입니다. 예를 들어, XI 는 11 인데요, IX 는 9입니다. 위 과 같이, 주어진 지문에서도 I, X, C 문자의 위치에 대한 예제를 제시하고 있군요. Roman..
2022. 12. 5.