본문 바로가기

정글33

[크래프톤 정글] 15일 오늘 한 일 - 알고리즘 문제 오답 - 알고리즘 문제 풀이(2110, 6549, 11866, 1654, 2740) Review 오늘은 이전에 푼 문제 중 정리가 필요한 것을 오답하고, 새로운 문제를 풀이하였다. P11053. 가장 긴 증가하는 부분 수열 완전 탐색, DP, 이진탐색 3가지 방식으로 모두 풀이했다. 이진탐색으로 했을 때 시간 차이가 크게 나서 신기했다. 문제를 풀다보니, 이진탐색은 특정한 값을 찾기보다는 범위를 좁혀가며 범인을 잡는 것처럼 탐색하는 것 같다. P11053. 가장 긴 증가하는 부분 수열 문제: https://www.acmicpc.net/problem/11053 가장 긴 증가하는 부분 수열 문제, 줄여서 LIS(Logest Increasing Subsequence)라고도 한다... 2023. 5. 4.
[크래프톤 정글] 14일 - deque, Review 오늘 한 일☀️ - deque 공부 - 알고리즘 하 문제 위주 풀이 -> 완료 - 알고리즘 문제 오답 -> 진행 중 - 이진 탐색 공부(lower bound, upper bound, check 위주) -> 진행 중 deque deque는 앞, 뒤에서 데이터를 정리할 수 있는 양방향 자료형이다. +) 왜 양방향이 필요한가! 한쪽 방향으로만 출입구를 사용하면 맨 앞에 있는 원소를 제거할 때 n번의 이동이 필요하다. 평균적으로 n/2. 하지만 앞에서 뺀다면 1번만에 빠지기 때문에 상관없다. 자료구조 개념은 이전에 공부한 경험이 있으니, 각 언어에서 사용법을 알면 될 것 같다. 참고로 deque를 파이썬 공식 문서에서 찾아보면 양쪽 끝에서 빠르게 추가와 삭제를 할 수 있는 리스트류 컨테이너 라고 나온다. 여기서.. 2023. 5. 4.
[크래프톤 정글] 13일 - Stack 오늘 한 일🌴 - Stack 공부 - Algorithm 문제 풀이(2470, 11053, 1629, 10828, 10773, 9012, 17608, 2493) Stack 데이터를 임시 저장할 때 사용하는 자료구조이다. 데이터의 입력과 출력 순서는 후입선출(LIFO: Last In First Out) 방식이다. 고정 길이 Stack class FixedStack: """고정 길이 스택 클래스""" class Empty(Exception): """비어 있는 FixedStack에 팝 또는 피크할 때 내보낸다.""" pass class Full(Exception): """가득 찬 FixedStack에 푸시할 때 내보내는 예외 처리""" pass def __init__(self, capacity): """스택 초.. 2023. 5. 3.
[크래프톤 정글] 12일 - 탐색 오늘 한 일📝 - 이분 탐색 이론 공부 - Algorithm 문제 풀이(1920, 2805, 8983, 2630) 이분탐색 탐색은 데이터 집합에서 원하는 값을 가진 원소를 찾아내는 알고리즘을 말한다. 대표적인 탐색 방법은 다음과 같다. 배열 검색 연결 리스트 검색 이진 검색 트리 선형 검색(Linear search) 직선 모양(선형)으로 늘어선 배열에서 검색하여 원하는 키값을 가진 원소를 찾을 때까지 맨 앞부터 순서대로 검색하는 알고리즘을 말한다. n의 복잡도를 갖는다. 검색 종료 조건 검색 실패: 검색할 값을 찾지 못하고 배열의 맨 끝을 지나는 경우(if i == len(a)) 검색 성공: 검색할 값과 같은 원소를 찾는 경우(if a[i] == key) 배열 원소의 개수가 n일 때, 조건을 판단하는 횟.. 2023. 5. 3.
[크래프톤 정글] 11일 - 첫 시험 1주차 알고리즘 시험 더하기 사이클: https://www.acmicpc.net/problem/1110 1,2,3 더하기 - 재귀: https://www.acmicpc.net/problem/9095 부분수열의 합 - Brute force: https://www.acmicpc.net/problem/1182 더하기 사이클 문제 풀이 단계를 차분하게 정리하면 풀 수 있는 문제이다. 무조건 10의 자리로 만들어야한다고 생각해서 복잡하게 단계를 구상했는데 그렇지 않았다.(시험에서 뭔가 이상한 방향으로 가면 과감하게 나오는 것도 필요하다.😅) 이 문제에서 0을 앞에 넣어야한다는 생각에 str로 형변환하면서 풀이하려고 했는데 자릿수로 할 수 있는 문제였다. 이후에 두 방식대로 모두 풀이했다. 자릿수로 풀이한 경우 f.. 2023. 5. 3.
WEEK01. 특별한 과제 벌써 정글에 온 지 5일이 되었다. 이곳에서는 목요일이 한 주의 끝이고, 금요일이 시작인데 어떻게 보면 이 글을 쓰는 시점인 오늘(어제)이 새로운 한 주의 시작이다. 오기 전까지 다른 사람들의 후기에서 이 과제를 여럿 봤는데 이제 내가 이 글을 작성할 시점이라는 게 신기하다. 1월부터 모집을 시작했으니 작성한 지 벌써 3개월이 지난 지원서를 다시 읽어보았다. 오랜만에 읽어보니 조금은 꾸며진 간절함이 어색하기도 하다. 과거의 나 내가 정글에 지원한 이유는 단 한 가지다. 스스로 당당할 만큼 개발 공부에 몰입하는 것!👩‍💻 사실 나는 1학년 때부터 개발 동아리에서 활동했지만, 개발보다 다른 것이 더 재미있었다. 서로 알고 있는 것을 적극적으로 공유하는 개발 문화는 좋아했지만, 개발은 진득하게 하지 않았다. .. 2023. 5. 3.