[Python] 백준 알고리즘 온라인 저지 10250번 : ACM 호텔 Python3 코드 t = int(input()) for i in range(t): h, w, n = map(int, input().split()) num = n//h + 1 floor = n % h if n % h == 0: # h의 배수이면, num = n//h floor = h print(f'{floor*100+num}') Python3 코드 풀이 1. 문제에 대한 전체적인 코드 풀이 이 문제의 ACM 호텔은 손님이 오면 엘리베이터에 가까운 방부터 손님을 안내한다. 엘리베이터에 가까운 방은 각 층의 1호실에 해당한다. 예를 들어 호텔의 층수가 4층이라면 101 -> 201 -> 301-> 401 -> 102 -> 202 ->....
[Python] 백준 알고리즘 온라인 저지 2869번 : 달팽이는 올라가고 싶다 Python3 코드 import math a, b, v = map(int, input().split()) # a= 올라가는 길이, b= 떨어지는길이, v= 나무높이 day = math.ceil((v-a)/(a-b)) + 1 print(day) Python3 코드 풀이 1. 코드 풀이 전체적인 내용 요약 이번 문제는 나무 높이가 v인 나무가 있을 때 a만큼 올라갔다가 b만큼 떨어지길 반복해서 나무 정상에 도달하기까지 걸리는 날짜를 출력하는 문제이다. 문제를 풀 때에 주의해야 할 점은 나무 정상에 도달하게 되면 떨어지지 않는다는 것이다. 그래서 단순히 a-b를 구한 값을 나무높이 v에서 나누게 되면 정답을 맞힐 수 없다. 이 한..
[Python] 백준 알고리즘 온라인 저지 1193번 : 분수 찾기 무한히 큰 배열의 분수 1/1 1/2 1/3 1/4 1/5 … 2/1 2/2 2/3 2/4 … … 3/1 3/2 3/3 … … … 4/1 4/2 … … … … 5/1 … … … … … … … … … … … Python3 코드 input_num = int(input()) line = 0 # 사선 라인 max_num = 0 # 입력된 숫자(input_num 변수)의 라인에서 가장 큰 숫자 while input_num > max_num: line += 1 max_num += line gap = max_num - input_num if line % 2 == 0: # 사선 라인이 짝수번째 일 때 top = line - gap #분자 under =..

[Python] 백준 알고리즘 온라인 저지 2292번 : 벌집 Python3 코드 n = int(input()) nums_pileup = 1 # 벌집의 개수, 1개부터 시작 cnt = 1 while n > nums_pileup : nums_pileup += 6 * cnt # 벌집이 6의 배수로 증가 cnt += 1 # 반복문을 반복하는 횟수 print(cnt) Python3 코드 풀이 1. 코드의 전체적인 풀이 요약 이 문제는 랜덤으로 숫자 N이 주어질 때 1이 있는 벌집 위치에서 숫자 N까지 거쳐가는 단계의 수를 찾아내는 문제이다. 다시 말해서 숫자 N이 벌집에서 몇 겹째에 있는지를 출력하는 문제이다. 문제를 풀 때는 while 반복문을 이용해서 풀었다. 벌집의 모양을 보면 벌집의 개수가 6의 배수로 ..
[Python] 백준 알고리즘 온라인 저지 2839번 : 설탕 배달 Python3 코드 sugar = int(input()) bag = 0 while sugar >= 0 : if sugar % 5 == 0 : # 5의 배수이면 bag += (sugar // 5) # 5로 나눈 몫을 구해야 정수가 됨 print(bag) break sugar -= 3 bag += 1 # 5의 배수가 될 때까지 설탕-3, 봉지+1 else : print(-1) Python3 코드 풀이 1. 작성한 코드에 대한 전체적인 풀이 내용 이 문제는 설탕의 무게를 나타내는 숫자 N이 입력되면 3 킬로그램과 5 킬로그램으로 된 봉지에 나누어 담아서 가장 적은 수의 봉지 개수를 출력하는 문제이다. 설탕을 나눠 담을 때 정확하게 n이 될 수..