y0ngjaenious / 3Q-per-week

1 stars 0 forks source link

3문제 인증 - 황동영 #1

Open y0ngjaenious opened 3 years ago

y0ngjaenious commented 3 years ago

주차별 푼 문제들 로깅

y0ngjaenious commented 3 years ago

2020년 12월 2주차

문제

1. Insertion sort list(Link)

분류: Data Structure/Linked List 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 링크드리스토 활용 문제로 괜찮음.

2. Add Two Numbers(Link)

분류: Data Structure/Linked List 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 링크드리스트 활용 문제로 추천.

3. Longest Substring Without Repeating Characters(Link)

분류: Algorithms/Two Pointer(Sliding Window) 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: DP인줄 알았는데, 알고보니 투포인터, 깨달으면 금방 풀림

y0ngjaenious commented 3 years ago

2020년 12월 3주차

문제

1. Two Sum(Link)

분류: Data Structure/Map 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: map 구조를 이용하는 쉬운 문제

2. Median of Two Sorted Arrays(Link)

분류: Algorithms/Divide and Conquer 난이도: Hard(LeetCode) 풀이 링크: Python 한줄평: 생각하기 힘들었는데, 풀고 나면 그렇게 어려웠나 싶은.. 분할정복 문제 처음 본 듯. 추천

3. Longest Palindromic Substring(Link)

분류: Algorithms/Dynamic Programming 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: DP로 풀었는데 타임리밋.. 같은 시간복잡도(다만 낮은 공간복잡도)로 다르게 풀었는데 어셉.. 문제는 좋은듯

y0ngjaenious commented 3 years ago

2020년 12월 4주차

문제

1. Palindrome Number(Link)

분류: Algorithms/Implementation 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 두가지 방법으로 풀었는데, 딱히 좋은 문제는 아닌 것 같음.

2. Container With Most Water(Link)

분류: Algorithms/Two Pointer(Sliding Window) 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 추천할만한 문제. Two pointer를 적절하게 응용할 수 있어야 함.

3. 3sum(Link)

분류: Data Structure/Map 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 한번쯤 꼭 풀어봐야할 문제. 2-sum은 쉽게 풀 수 있다는 것을 고려. 분류가 2pointer로 되어있는데 Map을 잘 이용하면 더 빠르게 가능.

y0ngjaenious commented 3 years ago

2021년 1월 1주차

문제

1. Letter Combinations of a Phone Number(Link)

분류: Algorithms/BP 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: python의 itertools는 강력하다. 재귀로도 풀었는데, 둘다 안될때 어떻게 해야할지를 고민해볼 것.

2. Remove Nth Node From End of List(Link)

분류: Data Structure/Linked List 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 링크드리스트 문제는 구조만 이해하면 쉽다1

3. Swap Nodes in Pairs(Link)

분류: Data Structure/Linked List 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 링크드리스트 문제는 구조만 이해하면 쉽다2

y0ngjaenious commented 3 years ago

2021년 1월 2주차

문제

1. Merge k Sorted List(Link)

분류: Data Structure/Linked List, Data Structure/heap 난이도: Hard(LeetCode) 풀이 링크: Python 한줄평: Linked List 문제지만, 알고보면 heap(Priority queue)를 써야하는 문제. Hard치곤 어렵지 않은듯.

2. Valid Parentheses(Link)

분류: Data Structure/Stack 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 쉬운 스택 문제

3. Maximum Subarray(Link)

분류: Algorithms/DP 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 가장 유명한 DP문제인데, 이걸 분할정복으로도 풀어보라고 되어있어서 풀어보았다. 분할정복으로 푸는건 Easy는 아닌듯

y0ngjaenious commented 3 years ago

2021년 1월 3주차

문제

1. Climbing Stairs(Link)

분류: Algorithms/DP 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 단지 재귀를 memoization을 써서 풀면 되는 문제

2. Valid Parentheses(Link)

분류: Algorithms/DP 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 원래 DP 문제 같은데, 그냥 조합으로 풀었다.

3. Minimum Path Sum(Link)

분류: Algorithms/DP 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 기본적인 memoization 문제

y0ngjaenious commented 3 years ago

2021년 1월 4주차

문제

1. Merge Two Sorted Lists(Link)

분류: Data Structure/Linked List 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 좀 더 줄일 수 있을지에 대해 생각해보기

2. Best Time to Buy and Sell Stock(Link)

분류: Algorithms/DP 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 유명한 문제, 더 간단하게 줄일 수 있을지 + 응용 문제도 풀어보기

3. Single Number(Link)

분류: Data Structure/Bit 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: Bit 연산을 이용해야 하는 문제. 비트 관련 문제 더 풀어보자

y0ngjaenious commented 3 years ago

2021년 1월 5주차

문제

1. 가장 큰 정사각형 찾기(Link)

분류: Algorithm/DP 난이도: Level2(Programmers) 풀이 링크: Python 한줄평: CNS 코테가 이 문제 응용이었던 것 같다.

2. Jaden Case(Link)

분류: Algorithm/String Manipulation 난이도: Level2(Programmers) 풀이 링크: Python 한줄평: String Manipulation 문제, ASCII를 이용해서 풀었다.

3. Trapping Rain Water(Link)

분류: Data Structure/Stack, Algorithm/Two Pointer 난이도: Hard(LeetCode) 풀이 링크: Python 한줄평: Stack과 Two Pointer를 이용해서 각각 풀 수 있었다. 엣지케이스를 반영해서 고치기보단 처음부터 아예 정석적으로 푸는 것이 중요

y0ngjaenious commented 3 years ago

2021년 2월 1주차

문제

1. Jump Game(Link)

분류: Algorithm/Greedy 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: O(N)으로 풀려고 하다보면 보이는 문제

2. Maximum Profit in Job Scheduling(Link)

분류: Algorithm/DP 난이도: Hard(LeetCode) 풀이 링크: Python 한줄평: DP를 이용하지만, 이진탐색을 같이 이용해야하는 문제. 즉, 알고리즘을 생각한 뒤에 효율적인 자료구조를 찾는 것이 중요

3. Merge intervals(Link)

분류: Data Structure/Array 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 크게 어렵지는 않았음

y0ngjaenious commented 3 years ago

2021년 2월 2주차

문제

1. Shortest Distance to a Character(Link)

분류: Data Structure/Stack 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: Leetcode 데일리 챌린지로 풀어서 난이도를 몰랐는데 스택으로 풀면 사실 Easy까지는 아닌듯.. Trapping Rain Water의 하위호환정도 하는 문제인듯

2. Simplify Path(Link)

분류: Data Structure/Stack 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 스택을 이용하는 문제. 스택을 잘 이해했다면 어렵지 않음.

3. Peeking Iterator(Link)

분류: Algorithm/Implementation 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: Design 형태의 문제를 처음 봐서 그렇지 사실 어려운 문제는 아니었음. 주어진 인터페이스를 잘 사용하는 것이 중요.

4. binary-search-tree-to-greater-sum-tree (Link)

분류: Data Structure/BST 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: BST traversal을 이용한 문제. 복습하기 좋았음.

5. Copy List with Random Pointer(Link)

분류: Data Structure/Linked List 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: Linked List문제중에는 생각하기 그나마 까다로운 문제인듯. map(python에서는 dict)를 잘 쓰자

y0ngjaenious commented 3 years ago

2021년 2월 3주차

문제

1. Roman to Interger(Link)

분류: Data Structure/Stack 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 뭔가 자료구조 시험 문제로 나올 것 같은 문제

2. Remove Duplicates from Sorted Array(Link)

분류: Data Structure/Array 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: linear search를 현명하게 하는 것이 중요

3. Remove Duplicates from Sorted Array II(Link)

분류: Data Structure/Array 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: dic를 써서 쉽게 해결 가능

y0ngjaenious commented 3 years ago

2021년 2월 4주차

이번주는 쉬겠습니다.

y0ngjaenious commented 3 years ago

2021년 3월 1주차

문제

1. Distribute Candies(Link)

분류: Data Structure/Map 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 리트코드 데일리 챌린지라 풀었음.

2. Set Mismatch(Link)

분류: Data Structure/Bit 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 여러 풀이가 있을 것 같은데 Bit을 이용해봤음.

3. Jump Game II(Link)

분류: Algorithm/Greedy 난이도: Hard(LeetCode) 풀이 링크: Python 한줄평: 그리디를 현명하게 사용하는 법을 깨우쳐준 좋은 문제... ㄹㅇ 좋은 문제다.

4. Jump Game III(Link)

분류: Algorithm/BFS 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: BFS를 이용해서 풀었는데, recursion을 이용해 O(1) 공간으로 푸는 방법도 있었음. 좋은 문제

5. Missing Number(Link)

분류: Data Structure/Bit 난이도: Easy(LeetCode) 풀이 링크: C 한줄평: C문법도 익숙해질겸 풀어보았다. 사실 수학을 써서 쉽게 풀수도 있지만, 굳이 Bit을 써보았다.

6. Symmetric Tree(Link)

분류: Data Structure/Tree 난이도: Easy(LeetCode) 풀이 링크: C 한줄평: C문법은 넘 어렵다..

7. Intersection of Two Linked Lists(Link)

분류: Data Structure/Linked List 난이도: Easy(LeetCode) 풀이 링크: C 한줄평: 링크드리스트 문제는 사실 원래는 자료구조만 잘 이해하면 풀기 쉬운데, 이 문제 같은 경우 아이디어가 필요했다. 갠적으로 이지는 아니고 미디움 이상의 체감.. 좋은 문제다

8. Average of Levels in Binary Tree(Link)

분류: Algorithm/BFS 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: C로 큐를 구현하기 두려워서 파이썬으로 풀었는데, 생각해보니까 어레이로 구현하면 됐을 것 같다

9. 2018카카오블라인드-[3차] 압축(Link)

추천 문제 by 유림 분류: Data Structure/Map 난이도: 중 풀이 링크: Python 한줄평: 좋은 문제였다. 효율적인 자료구조를 생각하면서도 문제의 조건을 잘 만족하도록 구현해야했다.

10. Design HashMap(Link)

분류: Data Structure/Map 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 자료구조를 밑바닥부터 구현하는 문제. HashMap을 chaining을 이용해서 구현해보았다.

y0ngjaenious commented 3 years ago

2021년 3월 2주차

문제

1. Remove Palindromic Subsequences(Link)

분류: Data Structure/ETC 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 리트코드 데일리 챌린지라 풀었음.

2. Add One Row to Tree(Link)

분류: Algorithm/BFS 난이도: Medium(LeetCode) 풀이 링크: C++ 한줄평: 씨쁠쁠로 처음 코테를 풀어보았다... BFS를 응용해서 재밌게 풀었던 문제

3. Integer to Roman(Link)

분류: Data Structure/Map 난이도: Easy(LeetCode) 풀이 링크: C++ 한줄평: 쓰레기 문제

4. Coin Change(Link)

분류: Algorithm/DP 난이도: Medium(LeetCode) 풀이 링크: C++ 한줄평: 깔끔한 DP문제. 이런 식으로 점화식 세워나가는 방식은 새로웠음.

5. Check If a String Contains All Binary Codes of Size K(Link)

분류: Data Structure/Map 난이도: Medium(LeetCode) 풀이 링크: C++ 한줄평: Map으로 간단하게 풀었다.

6. Binary Trees With Factors(Link)

분류: Algorithm/DP 난이도: Medium(LeetCode) 풀이 링크: C++ 한줄평: DP문제였는데, 생각해내기 쉽지 않았다.

y0ngjaenious commented 3 years ago

2021년 3월 3주차

문제

1. Encode and Decode TinyURL(Link)

분류: Algorithm/Implementation 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 리트코드 데일리 챌린지.. 그냥 무난한 문제였던 것 같다.

2. Best Time to Buy and Sell Stock with Transaction Fee(Link)

분류: Algorithm/DP 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: DP 문제였는데, 점화식이 생각보다 빨리 세워져서 금방 풀었다.

3. Generate Random Point in a Circle(Link)

분류: Algorithm/Math 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 극좌표 변환을 이용해서 풀었음.. 근데 코테에 나오려나 이런게

4. Wiggle Subsequence(Link)

분류: Algorithm/DP 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 깔끔한 DP문제. Up 과 Down 두개를 따로둬서 풀었음.

5. Key and Rooms(Link)

분류: Algorithm/BFS 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 보자마자 BFS로 품

6. Design Underground System(Link)

분류: Algorithm/Implementation 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 구현 문제, 생각해보니까 내가 푼 방식은 abc - def 와 ab - cdef를 구분할 방법이 없다.. 그냥 tuple - int의 map으로 해야할듯

7. Reordered Power of 2(Link)

분류: Data Structure/ETC 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 첨에 방법 생각하고 음.. 이걸 완전탐색으로 풀어도 되나 했는데 진짜 완전탐색 문제였음

8. 평범한 배낭(Link), 지훈님 추천문제

분류: Algorithm/DP 난이도: 중 풀이 링크: Python 한줄평: 예전에 풀어봤던 문제라 금방 풀긴 했는데, 첨 풀었을때는 되게 신박했던 기억이 있음.

9. Swapping Nodes in a Linked List(https://leetcode.com/problems/swapping-nodes-in-a-linked-list/))

분류: Data Structure/Linked List 난이도: Medium(LeetCode) 풀이 링크: C++ 한줄평: 이러한 류로 Cycle을 이용한 링크드리스트 문제가 은근 많이 나오는듯

2021 상반기 라인 공채 코딩테스트

후기: Link

y0ngjaenious commented 3 years ago

2021년 3월 4주차

문제

1. Vowel Spellchecker(Link)

분류: Data Structure/Map 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: straightforward한 문제

2. 3Sum With Multiplicity(Link)

분류: Data Structure/Map 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 어려웠던 문제. 컴비네이션을 이용해서 하라는대로 해야 풀렸다.

3. Advantage Shuffle(Link)

분류: Algorithm/Greedy 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 좋은 문제. 그리디하게 풀면 되는데, 그리디임을 확신하기가 쉽지는 않은듯. 어 되네?는 그리디로 완벽히 푼 것이 아니거늘..

4. Word Subsets(Link)

분류: Data Structure/Map 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: Counter 이용해서 쉽게 풀었다.

5. Palindromic Substrings(Link)

분류: Algorithm/DP 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: DP라기 보다는 어떻게 효율적 탐색을 할까에 대한 문제

6. Reconstruct Original Digits from English(Link)

분류: Data Structure/Map 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: 규칙만 잘 생성해서 풀면 되는 문제

y0ngjaenious commented 3 years ago

2021년 4월 1주차

문제

1. Flip Binary Tree To Match Preorder Traversal(Link)

분류: Data Structure/Tree 난이도: Medium(LeetCode) 풀이 링크: Python 한줄평: straightforward한 문제

2. Russian Doll Envelopes(Link)

분류: Algorithm/DP 난이도: Hard(LeetCode) 풀이 링크: Python 한줄평: DP + binary searchㅍ + sorting를 해야하는 고난이도 문제

3. Stamping The Sequence(Link)

분류: Algorithm/Greedy 난이도: Hard(LeetCode) 풀이 링크: Python 한줄평: 신박한 방법으로 풀어보았다.

4. Palindrome Linked List(Link)

분류: Data Structure/Linked List 난이도: Easy(LeetCode) 풀이 링크: Python 한줄평: 알면 풀고 모르면 못푸는 문제

y0ngjaenious commented 3 years ago

2021년 4월 2주차

이번주 쉽니다~~

y0ngjaenious commented 3 years ago

2021년 4월 4주차

y0ngjaenious commented 3 years ago

2021년 5월 1주차

y0ngjaenious commented 3 years ago

2021년 5월 1주차

y0ngjaenious commented 3 years ago

2021년 5월 3주차