tier:b 3

[백준] 2869 (달팽이는 올라가고 싶다)

문제 요약낮에 A미터 올라갈 수 있지만, 밤에 B미터 미끄러져 내려가는 달팽이가 있습니다. V미터 높이를 올라가야 하는데 정상에 올라간 후에는 미끄러지지 않는다고 할 때, 정상에 오를 때까지 며칠이 걸리는지 계산해야 합니다.해설달팽이가 d일 만에 정상에 오른다고 해 봅시다. 그러면 d-1번의 밤을 겪었고, 그 동안의 누적된 높이는 $(d-1)(A-B)$가 될 것입니다.마지막 날 낮에는 거기서 A만큼 추가로 올라가며, 정상에 도달해서 미끄러지지 않습니다. 따라서 최종 높이는 $(d-1)(A-B)+A$가 되고, 이것이 V 이상이면 됩니다. 즉, $(d-1)(A-B)+A\ge V$찾아낸 부등식을 d에 대해 풀면:$d(A-B)\ge (V-B)$여기서 d는 자연수이므로 $d=\lceil\frac{V-B}{A-B}..

[백준] 2292 (벌집)

문제 요약육각형으로 이루어진 벌집에서, 중앙의 1번 방부터 시작해 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 매깁니다.방 번호 N이 주어졌을 때, 1번 방에서 N번 방까지 최소 개수의 방을 지나갈 때 몇 개의 방을 지나가는지(시작과 끝을 포함하여)를 계산해야 합니다.정수 N은 10억까지 가능합니다.해설1번 방을 중심으로 하는 '육각형 층'의 개념을 생각해 보면, 1번 방만으로 구성된 층이 1층이라고 했을 때, N번 방이 k층에 속해 있다면 문제의 정답은 k가 됩니다.k층의 가장 큰 방 번호를 계산해 볼 수 있습니다. 1층은 1, 2층은 1 + 6 = 7, 3층은 1 + 6 + 12 = 19. 이렇게 계차수열 형태임을 짐작할 수 있고 실제로 k층에 대해서는:$1+6\times 1+6\times 2+\c..

[백준] 10250 (ACM 호텔)

문제 요약호텔에서 손님이 오는 순서대로 방을 배정하는데, 각 층별로 1호실 앞에 있는 엘리베이터 문으로부터 걷는 거리가 짧은 방을 먼저 배정합니다. 단, 거리가 같은 경우에는 층수가 낮은 방을 먼저 배정합니다. 즉 12층짜리 호텔이라면 101, 201, …, 1201호를 먼저 온 12명에게 다 배정하고 13번째 손님에게 102호를 배정하게 됩니다.호텔의 층수 H, 호수 W가 주어졌을 때 N번째 손님에게 배정되어야 하는 방 번호를 구해야 합니다.해설N번째 손님에게 배정되는 방의 층수와 호수를 독립적으로 계산할 수 있습니다.문제의 조건에 따라 i층 j호실은 (j - 1) * H + i번째 손님에게 배정되고, i는 항상 H보다 작거나 같은 정수이므로, N - 1 = (j - 1) * H + (i - 1)에서 ..