[Python] 백준 알고리즘 온라인 저지 3009번 : 네 번째 점 Python3 코드 x_nums = [] y_nums = [] for _ in range(3): x, y = map(int, input().split()) x_nums.append(x) y_nums.append(y) for i in range(3): if x_nums.count(x_nums[i]) == 1: x4 = x_nums[i] if y_nums.count(y_nums[i]) == 1: y4 = y_nums[i] print(x4, y4) Python3 코드 풀이 1. 작성한 코드에 대한 전체적인 내용 직사각형은 네 각의 크기가 모두 직각이고 마주 보는 두 변의 길이가 같다. 직사각형의 이러한 특성을 이용해서 x좌표로 이루어진 네 ..

[Python] 백준 알고리즘 온라인 저지 1085번 : 직사각형에서 탈출 Python3 코드 x, y, w, h = map(int, input().split()) print(min(x, y, w-x, h-y)) Python3 코드 풀이 1. 코드 풀이에 대한 전체적인 내용 정리 이 문제는 왼쪽 아래 꼭짓점을 (0, 0) 좌표에 두고 오른쪽 위 꼭짓점을 (w, h) 좌표에 둔 직사각형이 있다고 할 때, 직사각형 평면 내부의 어떤 점 (x, y) 좌표에서 직사각형의 경계면까지의 거리 중에서 가장 짧은 거리를 구하는 문제이다. (x, y) 좌표를 임의로 지정했을 때, (x, y) 좌표에서 경계면까지의 거리를 그림으로 표현해보면 아래와 같다. 그림에서 나타내는 4가지 선의 식을 설명하면 - 왼쪽 아래 꼭짓점이..
[Python] 백준 알고리즘 온라인 저지 9020번 : 골드바흐의 추측 Python3 코드 # 소수 집합 만들기 nums = {x for x in range(2, 10_001) if x == 2 or x % 2 == 1} # nums = 2와 홀수로 이루어진 집합 for odd in range(3, 101, 2): # 101 == int(math.sqrt(10_000)) + 1 nums -= {i for i in range(2 * odd, 10_001, odd) if i in nums} # 홀수의 배수로 이루어진 집합을 빼줌 # 골드바흐 수를 출력 t = int(input()) for _ in range(t): even = int(input()) half = even//2 # 입력받은 짝수를 2로 나눈..
[Python] 백준 알고리즘 온라인 저지 4948번 : 베르트랑 공준 Python3 코드 import math # 소수의 집합을 구함 nums = {x for x in range(2, 246_913) if x == 2 or x % 2 ==1} # nums = 2와 홀수로 이루어진 집합 for odd_num in range(3, int(math.sqrt(246_912))+1, 2): # 3부터 최대값의 제곱근까지 홀수만 nums -= {i for i in range(2 * odd_num, 246_913, odd_num) if i in nums} # 홀수의 배수로 이루어진 집합을 생성해서 빼줌 # 반복문 만들기 while True: n = int(input()) if n == 0: break # n == ..
[Python] 백준 알고리즘 온라인 저지 1929번 : 소수 구하기 Python3 코드 import math start_num, last_num = map(int, input().split()) nums = {x for x in range(start_num, last_num+1) if x == 2 or x % 2 ==1} # nums = 2와 홀수로 이루어진 집합 for odd_num in range(3, int(math.sqrt(last_num))+1, 2): # 3부터 last_num제곱근의 범위에서 홀수만 nums -= {i for i in range(2 * odd_num, last_num + 1, odd_num} # for문이 반복되는 동안 홀수의 배수로 이루어진 집합을 빼줌 for sosu i..