set( ) 집합 자료형으로 변환하는 함수. 중복을 허용하지 않는 특성을 이용하여 unique 한 값을 남기고 중복을 제거할 때 사용한다. set 함수의 내용을 아래에서 계속 정리해보겠다. - 순서 - 1. 집합 자료형 선언 2. 집합 자료형으로 변환 3. 중복되는 요소를 제거 1. 집합 자료형 선언 set( ) 함수나 중괄호{ }를 이용해서 선언할 수 있다. 그러나 값이 없는 집합 자료형을 선언할 때는 set( )을 이용해야 한다. 변수를 선언할 때, 중괄호{ } 안에 value만 있으면 set타입이 되지만 빈 괄호로 그냥 두어 값이 없거나 key - value 짝을 이루고 있으면 dictionary 타입이 된다. 리턴되는 값은 dict타입과 동일하게 { } 중괄호로 묶여 출력된다. 수학의 집합과 동일..
[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이 될 수..