대웅짱님의 블로그
오늘 소개할 책은 파울로 코엘료의 연금술사이다. 굉장히 유명한 책인데 이제서야 읽게 되었다. 한 줄 감상 평을 하자면 [읽는 내내 생각할 거리를 주는 책]이라고 말할 수 있겠다. 줄거리를 간략하게 말하자면 산티아고라는 양치기 소년이 여러 표지들을 통해 만물의 언어를 이해하고 자아의 신화를 이루어내는 이야기라고 할 수 있다. 자아의 신화는 스스로 자신의 삶의 이유를 깨닫고 꿈과 목표를 향해 나아가는 것을 의미한다. 표지란 평소에는 그냥 지나칠 것들이지만 이러한 목표를 가진 사람들에게 보이는 어떠한 지침, 메시지를 의미한다. 만물의 언어는 깨달음을 얻은 사람들이 세계와 소통하는 방법이다. 세계에는 ‘나’도 포함되어 나의 마음과도 소통할 수 있게 된다. 여기까지 들으면 책이 참 어렵고 재미없을 것 같지만 그렇..
친구들과 같이 이번에 3박 5일 세부 여행을 다녀왔다. 여행 경비 같은 것을 기록해놓을려고 글을 쓴다. 사실 3박 5일이라는 말이 생소할 수도 있는데 동남아 여행갈 때는 비행 시간이 4~5시간 정도 소요되기 때문에 첫날 오후 한국 출발 - 둘째날 새벽 세부 도착 마지막날 새벽 세부 출발 - 마지막날 아침 한국 도착 이런 식의 비행편이 많기 때문에 생긴 말이다. 나도 이번에 여행 준비하면서 알게 되었다. 나랑 민규 부용 현수 똥글 총 5명의 인원이 가게 되었고 항공사는 진에어를 이용했다. 운임은 왕복 318,200원이다. 이게 쫌 빡치는게 처음에 예약할 때는 예약 등급때문에 조금 더 저렴했었는데 다 작성하고 예약 확정하려고 하니까 현재 페이지에서 예약이 안된다고 하더니 다시 처음부터 예약했어야 했다. 그럴..
오랜만에 글을 쓴다. 저번에 티스토리 에디터 신 버전이 나오고 나서 부터 글 쓰는게 뭔가 불편해서 안 쓰고 취업 준비하느라 안 쓰다 보니 어느덧 시간이 이렇게 흘러버렸다. 이 책은 취업 준비가 힘들 때마다 조금 씩 읽던 책이다. 책의 구성은 인간의 괴롭히는 다섯 가지의 마음 형태에게 지지 말라는 주제가 있고 각 주제마다 2~3페이지 가량의 에피소드들이 여러개 수록된 형태로 구성되어 있다. 즉, 한번에 쭉 읽는 것보단 다른 책을 읽으면서 조금씩 읽는 것을 추천한다. 마치 옛날에 읽었던 혜민 스님의 멈추면, 비로소 보이는 것들이라는 책과 정목 스님의 달팽이는 늦어도 늦지 않다라는 책과 비슷한 느낌을 받았다. 이번 취준도 작년 처럼 잘 안되는 것 같아 마음의 치유를 얻기 위한 책을 읽고 싶어서 위의 두 책을 ..
문제: https://www.acmicpc.net/problem/15684 오늘 문제는 사다리 조작이다. 사다리 타기 게임을 시뮬레이션 하는 문제이다. 내가 임의로 몇 개의 가로 선을 추가해서 i번 째 사다리를 i번 사다리로 통과하게 만들어야 한다. 만약 추가해야하는 가로 선이 3개가 넘어가거나 어떻게 가로 선을 놓아도 i번 째 사다리가 i번 사다리로 통과하지 못한다면 -1를 출력하고 가로 선을 추가해 위 조건을 만족시킬 수 있다면 그 가로 선의 개수의 최소 값을 출력하는 문제이다. (0개도 가능하다) 문제 해결 아이디어는 이전의 문제들 처럼 완전 탐색을 통해 풀었다. 가로 선은 최대 3개만 설치해야하고 사다리의 최대 개수와 높이가 각각 10, 30이므로 완전탐색을 이용해도 시간내에 충분히 가능하다. 먼..
문제: https://programmers.co.kr/learn/courses/30/lessons/42585 오늘은 프로그래머스 [스택/큐] 문제 중 쇠막대기를 소개할까 한다. 사실 이건 백준에서도 풀었었던 문제인데 여기에도 있어서 반가워서 포스팅 할려고 한다. 문제는 '(' 와 ')' 로 이루어진 문자열이 주어졌을 때 최종적으로 쇠막대기가 몇 개로 나누어 지는지 물어보는 문제이다. 만약 '( )' 처럼 괄호의 열림과 닫힘이 연속적으로 주어진다면 레이저를 쏘아서 현재 놓여져 있는 쇠막대기를 나눌 수 있다. 문제푸는 아이디어는 스택/큐 문제이지만 굳이 스택/큐를 사용할 필요는 없다. 간단한 규칙찾기로도 이 문제를 해결할 수 있다. 문제에도 있는 예제인 ( ) ( ( ( ( ) ( ) ) ( ( ) ) ( ..
문제: https://programmers.co.kr/learn/courses/30/lessons/42579 오늘은 프로그래머스 [해시] 문제들을 풀어봤다. 그 중 베스트앨범이라는 문제를 포스팅 해볼까 한다. [해시] 문제인 만큼 map이나 set을 최대한 활용해 보려고 노력했다. 문제 설명을 간단히 하자면 스트리밍 사이트에서 가장 유명한 노래들을 모아 베스트앨범을 만들고자 한다. 앨범에는 장르당 두 노래씩 넣는다.(여기 때문에 조금 헤맸다) 1. 가장 많이 재생된 장르부터 앨범에 넣는다.2. 두 곡의 순서는 더 많이 재생된 노래 먼저 넣는다.3. 만약 두 곡의 재생횟수가 같으면 고유번호(인덱스)가 더 낮은 것 부터 넣는다. 그 후 최종적으로 answer 벡터에 값을 넣어 반환하면 된다. 그런데 제한사항..
문제: https://www.acmicpc.net/problem/15683 최대 8 x 8 크기의 사무실에 설치된 감시 카메라와 벽의 위치가 주어진다. 감시 카메라는 모두 5종류가 있고 최대 8 대 까지 설치 할 수 있다. 각 감시 카메라는 상 하 좌 우 방향으로 감시가 가능하다. 감시 카메라를 모두 작동시켰을 때 감시하지 못하는 최소한의 사각 지대 크기를 출력하는 문제이다. 문제에서 물어 보는 것은 최소한의 사각 지대 크기 이므로 각 감시 카메라의 방향에 따라 달라지는 사각 지대의 크기를 모두 구해야된다. 이전의 문제들 처럼 완전 탐색을 하면 된다. 백트레킹으로 각 카메라의 방향을 가지는 배열을 구해주고 방향과 감시 카메라 종류에 따라 감시 가능 지역을 칠해주고 최종적으로 남아있는 0(빈 칸)의 개수를..
문제: https://www.acmicpc.net/problem/2473 KOI 고등부 문제이다. 주어진 배열에서 세 숫자를 더했을 때 0과 가장 가까운 숫자들을 출력하는 문제이다. 처음엔 단순하게 생각해서 정렬된 배열 arr에서 arr[i] + arr[j] = k 라고 했을 때 lower_bound로 i+1 ~ j-1 구간에서 -k와 가장 가까운 수를 찾아 i, j, -k와 가장 가까운 수의 합으로 최소값을 갱신해 갈려고 했다. 하지만 계산해보면 O(N^2 * lg N) 이므로 5000*5000*12 = 3억이 나온다. 즉, 시간 초과다. 다른 방법을 찾다가 O(N^2)에 해결하는 방법을 찾아서 소개한다. 3-SUM이라는 알고리즘이다. 출처 위키: 3SUM 영어는 잘 모르겠고 간단하게 정렬된 배열 ar..