어떤 사람에겐 굉장히 쉽고 어떤 사람에겐 도저히 안 풀리는 문제 .. 알고리즘에 치중해 문제를 풀다보니 기본적인 것을 놓치고 있었다. 산으로 갔다가 겨우 푼 뒤 반성한다는 의미에서 포스팅한다. https://www.acmicpc.net/problem/1072 문제N과 L이 주어질 때, 합이 N이면서, 길이가 적어도 L인 가장 짧은 연속된 음이 아닌 정수 리스트를 구하는 프로그램을 작성하시오. 입력첫째 줄에 N과 L이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이고, L은 2보다 크거나 같고, 100보다 작거나 같은 자연수이다.출력만약 리스트의 길이가 100보다 작거나 같으면, 연속된 수를 첫째 줄에 공백으로 구분하여 출력한다. 만약 길이가 100보다 크거나 그러한 수열이 없을 때는 -..
좋은 문제를 가져왔다. 풀면서 생각해 볼만한 주제가 많아서 재밌게 풀었던 문제이다. https://www.acmicpc.net/problem/5427 문제상근이는 빈 공간과 벽으로 이루어진 건물에 갇혀있다. 건물의 일부에는 불이 났고, 상근이는 출구를 향해 뛰고 있다.매 초마다, 불은 동서남북 방향으로 인접한 빈 공간으로 퍼져나간다. 벽에는 불이 붙지 않는다. 상근이는 동서남북 인접한 칸으로 이동할 수 있으며, 1초가 걸린다. 상근이는 벽을 통과할 수 없고, 불이 옮겨진 칸 또는 이제 불이 붙으려는 칸으로 이동할 수 없다. 상근이가 있는 칸에 불이 옮겨옴과 동시에 다른 칸으로 이동할 수 있다.빌딩의 지도가 주어졌을 때, 얼마나 빨리 빌딩을 탈출할 수 있는지 구하는 프로그램을 작성하시오.입력첫째 줄에 테스..
경로 역추적 처리에 대해 기록하고자 한다. 쉽게 말해, 탐색 경로를 출력하는 문제였고 그 과정에서 소위 말하는 삽질을 했다. https://www.acmicpc.net/problem/13913 문제수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 1초 후에 2*X의 위치로 이동하게 된다.수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾을 수 있는 가장 빠른 시간이 몇 초 후인지 구하는 프로그램을 작성하시오.입력첫 번째 줄에 수빈이가 있는 위..
간단한 문제인데, 처리 부분에서 눈여겨 볼만한 부분이 있어서 포스팅한다. 골드4 문제이고 정답 비율은 약 26%로 낮은 편이다. 알고리즘 문제를 풀면서 느낀 건 티어보다도 정답 비율이 낮은 문제의 경우 세심한 처리를 요구하는 경우가 많다는 점이다. 코딩테스트에서 흔히 말하는 솔.. 을 하려면 주어지는 테스트케이스 이외에 모든 엣지 케이스에 대해서도 통과를 받아야 하기 때문에 이런 처리법 많이 연습해야만 한다 !! https://www.acmicpc.net/problem/12851문제수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 ..
코딩테스트 준비할 때 자잘한 처리에 도움이 될 것 같아서 남기는 포스팅이다. 어렵지 않은 문제로, 알고리즘을 공부한 사람들이라면 BFS로의 접근을 쉽게 떠올릴 수 있는 문제였다. https://www.acmicpc.net/problem/25418 문제입력으로 양의 정수 A와 K가 주어지면, 아래 연산을 이용하여 A를 K로 변경하려고 한다. 정수 A를 변경할 때 사용할 수 있는 연산 종류는 다음과 같다.연산 1: 정수 A에 1을 더한다.연산 2: 정수 A에 2를 곱한다.정수 A를 정수 K로 만들기 위해 필요한 최소 연산 횟수를 출력하자. 입력첫 번째 줄에 양의 정수 A와 K가 빈칸을 사이에 두고 순서대로 주어진다.출력첫 번째 줄에 양의 정수 A를 양의 정수 K로 만들기 위해 필요한 최소 연산 횟수를 출력..
상반기 공채가 얼마 남지 않은 시점이기에, 하반기 정말 가고 싶어하던 기업 최탈 이후 쉬고 있던 알고리즘을 다시 시작해보려 한다. 사실 2월부터 다시 한 번 새로운 부트캠프에 합류하게 되었는데, 학습량이 많은만큼 기술 블로그에 꾸준하게 기록하고 정리하는 작업이 필요하다고 생각해 기존 알고리즘 풀이 용도로 사용하던 velog 대신 tistory 블로그를 새로 만들었다. 곧 프로젝트를 시작하기 때문에 언제가 될 지 모르겠지만 시간이 되는대로 천천히 마이그레이션 할 예정이다. 서론이 길었는데, 오늘 푼 문제는 백준 3085번 사탕 게임 문제이다. 문제는 다음과 같다. https://www.acmicpc.net/problem/3085 문제상근이는 어렸을 적에 "봄보니 (Bomboni)" 게임을 즐겨했다.가장 처..