Study with book/Algorithms

    [2020 카카오 블라인드 온라인 코딩 테스트] 문자열 압축

    [문자열 압축] programmers.co.kr/learn/courses/30/lessons/60057 풀고 느낀점 간단하면서도 간단하지 않은 느낌이었습니다. 생각보다 푸는데 시간이 많이 들었습니다. 한 1시간정도 소요된 것 같습니다. 문제를 제대로 읽지 않아서 처음에 엉뚱한 방법으로 풀다가 문제를 잘못 읽은 것을 알고 다시 풀었습니다. 문제를 진짜 꼼꼼하게 읽어야할 것 같습니다. String 클래스의 startWith() 메소드를 활용해서 크기별로 계속 자르면서 List에 담았고 나중에 for문을 돌면서 가장 작은 String Length를 반환하도록 하였습니다. 첫 문제라서 쉽다고 생각하고 빨리 풀어야지 하다가 결국 더 오래 걸린 느낌입니다. 문제를 꼼꼼히 읽는 습관을 길어야 할 것 같습니다.

    [2019 카카오 블라인드 온라인 코딩 테스트] 후보키

    [후보키] https://programmers.co.kr/learn/courses/30/lessons/42890 풀고 느낀점 문제를 읽고 대충 부분집합 구해서 풀면 되겠구나 생각했는데, 부분집합 구하는걸 아무리 애를 써도 코딩이 잘 안됐습니다. 그래서 그냥 인터넷에 찾아서 복붙하고 (나중에 실제 코딩 테스트 볼 때 복붙해도 괜찮겠다는 생각입니다. 🤣) 한 반나절 걸려서 푼것 같습니다. 문제가 밑에 있어서 그런지 정답률이 상당히 낮았습니다. 문제에서 후보키 조건중에 유일성 / 최소성이 있는데, 여기서 최소성을 가리는데 contains() 메소드를 사용했는데, 18, 19, 20, 22 예제가 계속 틀리다고 나왔습니다. 그래서 그냥 collection으로 풀어서 cotainsAll() 메소드를 사용했는데 다..

    [카카오 코드 페스티벌 2018 예선] 인형들

    카카오 코드 페스티벌 2018 예선 [인형들] www.acmicpc.net/problem/15954 아.. 어렵다.. 문제도 이해 잘 안돼... 이틀 정도 고민해봤는데 계속 틀려서 그냥 올림...

    [백준]설탕 배달

    백준저지 [설탕 배달] www.acmicpc.net/problem/2839

    [백준]괄호

    백준저지 [괄호]www.acmicpc.net/problem/9012

    [백준]RGB거리

    백준저지 [RGB거리]www.acmicpc.net/problem/1149

    [백준]피보나치 함수

    백준저지 [피보나치 함수] www.acmicpc.net/problem/1003

    KFirst And Sort

    1. 개요- N사 면접에서 나온 손코딩 문제- 왜 이걸 구현하지 못했니... 난이도 정말 낮은 건데 ㅜㅜㅜㅜ- 정말 정신 탈탈 털리니까 쉬운 것도 생각이 나지 않는구나... 더 열심히 하자!! 2. 문제- 문제는 정말 간단함.- 인자로 받는 K번째 수를 맨 앞으로 보내고 나머지를 오름차 순으로 정렬- void KFirstSort(int arr[], int arrLen, int k) k번째 값을 맨 앞으로 이동시키고 나머지 값들을 정렬한다.- 빅오(n) 정도 시간이 걸리도록 구현해 봄...- 순차적으로 우선순위 큐에 값을 넣고, k값을 만나면 맨 앞으로 이동- 이후, 우선순위 큐에서 값을 빼내면서 정렬시킴 3. 코드

    [백준]팰린드롬 만들기

    백준저지 [팰린드롬 만들기]https://www.acmicpc.net/problem/1254

    개선된 피보나치 함수 구현

    1. 개요 - N사 필기시험에 나왔던 기억이 있다. - 피보나치 함수 개선하기 - 코드 내용 1) Fibo1은 변수 2개만 이용해서 피보나치 수열 구현 2) Fibo2는 다이나믹 프로그래밍 기법을 이용 3) Fibo3은 일반적인 피보나치 수열(매우 비효율적) 4) Fibo4는 메모제이션(memozation)기법 사용 2. 코드 3. 정리 - 다이나믹으로 구현하는 법은 알고있었는데 메모제이션 기법은 처음알게 되었다. - 꼭 기억하자!! - 그리고 메모제이션 기법은 재귀함수 구현에 있어서 많이 사용되는 기법!!! - 재귀의 효율을 극대화시켜줌!!