728x90
반응형

파이썬 65

[Baekjoon 9663 / python / 골드4] N-Queen

n = int(input()) pos = [0] * n # 퀸 위치 담을 리스트 flag_heng = [False] * n # 행 배제 flag_a = [False] * ((n-1) * 2 + 1) # 우상향 대각 배제 flag_b = [False] * ((n-1) * 2 + 1) # 좌상향 대각 배제 count = 0 # 경우의 수 def set(i): global count for j in range(n): if not flag_heng[j] and not flag_a[i + j] and not flag_b[(n-1) + i - j]: # 행 , 대각, 대각 안전할 때 pos[i] = j # i번째 열의 j번째 행에 퀸을 둔다 if i == n - 1: # 마지막 열까지 n개의 퀸을 뒀을 때, 즉 경..

[Baekjoon 10872 / python / 브론즈3] 팩토리얼

def factorial(n): if n > 0: return n * (factorial(n - 1)) else: return 1 n = int(input()) print(factorial(n)) 팩토리얼은 n! 으로 표기하며, 1부터 n까지의 수를 곱하면 된다. 팩토리얼은 재귀함수로 표현할 수 있으며, 재귀함수는 자기 자신과 똑같은 함수를 호출하는 함수이다. 물론 팩토리얼의 구현은 재귀함수로 하지 않는 게 더 효율적이지만, 팩토리얼이 재귀함수를 호출할 때 사용되는 대표적인 예이기 때문에 재귀함수로 구현하였다.

Algorithm/Recursion 2024.03.22

[프로그래머스 / Python] 배열 회전시키기

def solution(numbers, direction) : if direction == 'right' : temp = numbers[-1] numbers[1:] = numbers[0:-1] numbers[0] = temp else : temp = numbers[0] numbers[0:-1] = numbers[1:] numbers[-1] = temp return numbers 정답 코드 'right'일 경우, 소실될 맨 마지막 요소[-1]를 temp 변수에 저장해둔 후 모든 요소를 오른쪽으로 밀어준다. 그리고 저장해둔 temp 값을 [0] 위치에 할당한다. 'left'는 right와 반대로 실시한다.

[프로그래머스 / Python] 주사위 게임 3

def solution(a, b, c, d) : origin = [a,b,c,d] so = list(set(origin)) if len(so) == 1 : # 4개 전부 같을 때 return origin[0] * 1111 elif len(so) == 2 : # 3개가 같거나, 2개/2개 같을 때 for i in origin : if origin.count(i) == 3 : p = i q = [x for x in origin if x != p][0] return (10 * p + q) ** 2 elif origin.count(i) == 2 : p = i q = [x for x in origin if x != p][0] return (p + q) * abs(p - q) elif len(so) == 3 : #..

728x90
반응형