제코베 16

[제주코딩베이스캠프] 눈떠보니 코딩테스트 전날 | 문제7. Eureka!

1. matrix 형태의 동적 계획법 - Recursion -memorization 이동 방법 1. 맨 왼쪽에서 시작할 경우 이동할 수 있는 방향 : 오른쪽, 아래 3으로 이동하는 최단 거리를 구하는 방식 > min(최소경로(i-1,j), 최소경로(i,j-1)+값(i,j) 일반적으로는 왼쪽에서 출발해서 오른쪽으로 순회를 한다. 하지만 문제에서는 다르다. 오른쪽에서 출발해서 왼쪽으로 순회한다. cross=[ [[3, 0, 1, 1, 8], [5, 0, 4, 5, 4], [1, 5, 0, 5, 1], [1, 2, 1, 0, 1], [0, 2, 5, 1, 1]], [[1, 2, 0, 3, 3], [1, 2, 0, 2, 4], [1, 2, 0, 2, 4], [4, 2, 0, 0, 1], [8, 4, 1, 1, ..

[제주코딩베이스캠프] 눈떠보니 코딩테스트 전날 | 문제6. 밭의 비밀

numpy를 이용하면 쉽게 배열 회전이 가능하다. 하지만 인터넷 검색 결과 백준 및 삼성 코테에서는 사용 불가 ㅠㅠ import numpy as np np.rot90(두번째밭,1) + np.array(첫번째밭) # 1회전 반시계방향, 1회전 시계방향은 -1이라고 쓰면 된다. np.rot90(두번째밭,1) - np.array(첫번째밭) np.rot90(두번째밭,1) * np.array(첫번째밭) np.rot90(두번째밭,1) @ np.array(첫번째밭) #행렬의 곱 # 8진법으로 문자열을 바꾸면 정답이다. 정답 = np.rot90(두번째밭,1) + np.array(첫번째밭) chr(int(''.join([str(i) for i in 정답[0]]),8)) #8진법으로 for k in range(5): pr..

[제주코딩베이스캠프] 눈떠보니 코딩테스트 전날 | 문제5. 그림자 연결!

def 깊이우선탐색(graph,start): 방문=[] # 너비우선탐색 : 큐 이용 / 깊이우선탐색 : 스택 이용 stack=[start] while stack: n=stack.pop() if n not in 방문: 방문.append(n) 차집합 = graph[n]-set(방문) stack+=차집합 return 방문 깊이우선탐색(graph,100) # 작은값 순회 def 깊이우선탐색(graph,start): 방문=[] # 너비우선탐색 : 큐 이용 / 깊이우선탐색 : 스택 이용 stack=[start] while stack: n=stack.pop() if n not in 방문: 방문.append(n) 차집합 = graph[n]-set(방문) if len(차집합)==0: 방문+=stack break stac..

[제주코딩베이스캠프] 눈떠보니 코딩테스트 전날 | 문제4. 자리를 양보해가며!

LRU 알고리즘 (Least Recently Used Algorithm) : 메모리 상에서 가장 최근에 사용한 적이 없는 캐시의 메모리부터 대체하며 새로운 데이터로 갱신시켜준다. 즉, 부재가 발생했을 경우 가장 오랫동안 사용되지 않은 페이지를 제거하는 알고리즘이다. 교체가 자주 일어나는 페이지의 자리를 보존해준다는 의미이다. ※ 페이지부재 : 메모리에 적재된 페이지중에 사용 페이지가 없을 때를 가리키는 말이다. 페이지교체 알고리즘 > 페이지 교체 알고리즘은 메모리를 관리하는 운영체제에서, 페이지 부재가 발생하여 새로운 페이지를 할당하기 위해 현재 할당된 페이지 중 어느 것을 교체할지를 결정하는 방법입니다. HIT > 참조하는 값이 이미 페이지에 존재할 경우! 1회 false (척추동물) 2회 false ..

[제주코딩베이스캠프] 눈떠보니 코딩테스트 전날 | 문제3. 섬으로 건너가라

오늘도 열심히 강의를 들으며 문제를 풀어나가봅니다..! 이 문제 해설 강의를 보기 전에 혼자서 먼저 풀어봤는데, 백준 사이트에서만 문제를 풀다가 새로운 유형의 문제를 풀으려니까 적응이 잘 안되더라구요 ㅠㅠ 그래도 열심히 해석해보다가 해설 강의 호로록 들어봤어요 :) datetime 모듈 > 날짜와 시간 데이터 처리를 담당한다. import datetiem 오늘시간=datetime.datetime.today() 오늘시간.year 오늘시간.month 오늘시간.day 오늘시간.hour 오늘시간.minute #01:01 시간=1 분=1 f'{시간:0>2}:{분:0>2}' import datetime 오늘시간=datetime.datetime.today() 대기인원=14000605 def solution(대기인원)..

[제주코딩베이스캠프] 눈떠보니 코딩 테스트 전날 | 문제2. JAVA독과 함께

눈떠보니 코딩테스트 전날 강의를 들으면 문제들이 보기 좋게 정리가 되어 있는 노션 링크를 공유해주십니다! 파일을 다운 받지 않아도 되니까 너무 편하고 좋아요 ㅠㅠ 핸드폰으로도 번거롭지 않게 바로 들어갈 수 있어서 더더욱 좋네요 ㅎ..ㅎ del의 시간 복잡도 : O(1) > 인덱스로 삭제한다. > del array[인덱스] 형식 > 인덱스에 범위 연산자 슬라이싱(:)을 사용하면 여러 개의 요소도 삭제 가능하다. remove의 시간 복잡도 : O(N) > 값으로 삭제한다. > array.remove(x) def 징검다리를건너라(돌의내구도,독): answer = [i['이름'] for i in 독] for i in 독: 독의위치=0 while 독의위치 JSON 파일에 저장하기 loads()함수 : JSON 문..