[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이 될 수..
[Python] 백준 알고리즘 온라인 저지 1712번 : 손익분기점 Python3 코드 a,b,c = map(int,input().split()) if b >= c: # 가변비용이 노트북 가격보다 같거나 크면 print(-1) else: print(a//(c-b)+1) Python3 코드 풀이 1. 문제를 푸는 방법 이 문제는 최초로 이익이 발생하는 시점의 판매량을 출력하고 손익분기점이 존재하지 않으면 -1을 출력하는 문제이다. 손익분기점 계산은 간단한 수학식으로 풀 수 있다. 2. 총수입 = 고정비용 + 가변비용 위 식을 문제에서 주어진 알파벳을 이용하고 판매량을 N이라고 한다면 C*N = A + B*N으로 나타낼 수 있다. 이 식을 판매량인 N을 구하는 식으로 바꾸면 N= A/(C-B)가 된다. 이 ..