본문 바로가기

파이썬27

퀵 정렬 Quick Sort (Python) n = int(input()) array = list() for _ in range(n): array.append(int(input())) def quick_sort(array, start, end): if start >= end: # 원소가 1개일 경우 종료 return pivot = start # 첫 번째 원소를 pivot으로 설정 left = start+1 right = end # 왼쪽에서부터 pivot보다 큰 값 선택, 오른쪽에서부터 pivot보다 작은 값 선택 while (left right): array[right], array[pivot] = array[pivot], array[right] # left보다 right 인덱스가 크면, 서로 swap else: array[left], array[.. 2022. 5. 21.
백준 1018 - 체스판 다시 칠하기 (Python) 코드 n, m = map(int, input().split()) board = list() for i in range(n): board.append(input()) white_board = """WBWBWBWB BWBWBWBW WBWBWBWB BWBWBWBW WBWBWBWB BWBWBWBW WBWBWBWB BWBWBWBW""".split() black_board = """BWBWBWBW WBWBWBWB BWBWBWBW WBWBWBWB BWBWBWBW WBWBWBWB BWBWBWBW WBWBWBWB""".split() cnt_list = list() for i in range(n-7): for j in range(m-7): white_cnt = 0 for k in range(8): for l in rang.. 2022. 5. 18.
파이썬 7568 - 덩치 (Python) 코드 n = int(input()) a = [] #1 for _ in range(n): x, y = map(int, input().split()) a.append([x, y]) rank = [1 for i in range(n)] #2 for i in range(n): for j in range(n): if a[i][0] < a[j][0] and a[i][1] < a[j][1]: rank[i] += 1 #3 print(*rank) #4 풀이 #1: n명의 덩치 (x, y)를 a라는 list의 원소로 추가해준다. #2: 각 사람의 등수를 1로 초기화해준다. #3: 더 큰 덩치가 있으면 등수를 1 더해준다. #4: 각 사람의 등수를 출력한다. 2022. 5. 17.
백준 10870 - 피보나치 수 5 (Python) 문제 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 n이 주어진다. n은 20보다 작거나 같은 자연수 또는 0이다. 출력 첫째 줄에 n번째 피보나치 수를 출력한다. 코드 def fibonacci(n): if n =2) 이기 때문에, n 2022. 5. 14.