[프로그래머스] 완전탐색 - 카펫
나의 답 def check(brown, yellow,x,y): b = x*y-((x-2)*(y-2)) y = (x-2)*(y-2) if brown == b and yellow == y: return 1 else: return 0 def solution(brown, yellow): cnt = brown+yellow arr = [] for i in range(3,cnt+1): # 약수 구하기 if cnt%i==0: arr.append(i) for value in arr: # 약수 조합 활용 x = value y = int(cnt/value) if check(brown, yellow,x,y): # 가로, 세로 값에 따라서 brown, yellow 충족 확인 return [x,y] if x>y else [y, ..
2024. 3. 18.
[이것이 코딩테스트다] Chapter 2. 구현
코딩테스트에서 구현이란 '머리속에 있는 알고리즘을 소스코드로 바꾸는 과정'이다. 예제 4-1 상하좌우 첫째 값 : 공간의 크기를 나타내는 N 둘째 값 : 여행가 A가 이동할 계획서 내용 입력 예시 5 R R R U D D 출력 예시 3 4 답안 예시 n = int(input()) x, y = 1, 1 plans = input().split() # L, R, U, D에 따른 이동 방향 dx = [0,0,-1,1] dy = [-1,1,0,0] move_types = ['L','R','U','D'] # 이동 계획을 하나씩 확인 for plan in plans: # 이동 후 좌표 구하기 for i in range(len(move_types)): if plan == move_types[i]: nx = x + dx..
2024. 3. 16.