썸네일 백준 28215번 대피소 - Python 문제 https://www.acmicpc.net/problem/28215 문제 해석 입력 첫 번째 줄에 집의 수 N, 대피소의 수 K가 입력된다. 그 뒤 집들의 좌표가 N줄에 걸쳐 입력된다. 출력 입력 받은 집의 좌표 중에서 K개의 대피소를 선정한다. 선정할 수 있는 모든 경우의 수 중에서 대피소에서 집 까지의 거리 중 가장 긴 값이 가장 작을 때의 최장거리를 출력한다. 여기서 대피소 까지의 거리란 (대피소의 X좌표) - (집의 X좌표) 의 절대값과 (대피소의 Y좌표) - (집의 Y좌표) 의 절대값을 합한 값을 의미한다. 풀이 1번 풀이 브루트포스 알고리즘을 이용한다. 집들 중에서 대피소를 선정하는 과정은 '조합'을 활용한다. but. 대피소의 수가 정해져있지 않으므로 직접 구현하기보다는 ..
썸네일 백준 28214번 크림빵 - Python 문제 https://www.acmicpc.net/problem/28214 문제 해석 입력 정수 N, K, P와 빵의 정보가 입력된다. N은 빵 묶음의 수, K는 빵 한 묶음 당 빵의 개수, P는 크림이 없는 빵의 최대치이다. 빵의 정보는 이진수 배열로 입력되며 1은 크림이 있는 빵, 0은 크림이 없는 빵을 나타낸다. 출력 크림이 없는 빵인 P개 미만인 묶음의 수를 출력한다. 풀이 1번 풀이 첫 번째 반복문에는 빵 묶음의 개수, 두 번째 반복문에서는 한 묶음 당 빵의 개수 동안 2중 반복문을 돈다. 안쪽 반복문을 도는 동안 0의 개수를 카운트하고, 저장한 뒤, 카운트 한 변수를 초기화 한다. 바깥쪽 반복문이 끝난 뒤, 판매 가능한 빵의 개수를 출력한다. N, K, P = map(int, input().sp..
썸네일 백준 2745 진법 변환 (Python) 문제 https://www.acmicpc.net/problem/2745 풀이 1번 풀이 Alphabet = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'] N, B = input().split() N = N[::-1] #앞자리부터 계산하기 위한 슬라이싱 B = int(B) Num = 0 #10진수 변환값 for i in range(len(N)): Num += Alphabet.index(N[i]) * (B ** i) #알파벳 리스트에서..
썸네일 백준 2563 색종이 (Python) 문제 https://www.acmicpc.net/problem/2563 풀이 Paper = [[0 for _ in range(101)] for _ in range(101)] I = int(input()) Color_Paper = [list(map(int, input().split())) for _ in range(I)] for i in Color_Paper: for a in range(i[0], i[0] + 10): for b in range(i[1], i[1] + 10): Paper[a][b] = 1 print(sum([Paper[i].count(1) for i in range(101)])) 100X100 사이즈의 도화지 2차원 배열을 만들고, 색종이들의 위치를 기반으로 색종이가 있는 부분을 1로 바꾸..