백준
[백준, Python] 18111 마인크래프트
가장 먼저, 땅의 높의는 256을 초과할 수 없으므로 높이의 최대값은 256 입니다. 또한, 가로 세로는 500 이하이므로 높이, 가로, 세로 3중 포문을 돌려도 256 * 500 * 500 = 64,000,000 즉, 1초 안에 가능합니다. 따라서 브루트 포스로 풀 수 있습니다. 핵심 아이디어는 다음과 같습니다. - for문을 통해 256층까지 탐색하면서 각 층의 블록들의 초과분과 부족분을 찾습니다. - (초과분 + 인벤토리의 블럭 수) >= 부족분 이면, 그 층 개수만큼의 블럭으로 평탄하게 할 수 있는 것입니다. - 따라서, 부족분과 초과분을 이용하여 시간을 계산하고 min값을 for문을 돌면서 체크합니다. - 층 수와 min값을 출력합니다. import sys n, m, b = list(map(in..