크래프톤정글 51

크래프톤정글 3주차; TIL 1 - 트리와 그래프, 자료 구조의 분류

2022-11-11 그래프란, 트리와 그래프의 차이 출처: https://bigsong.tistory.com/33 https://nulls.co.kr/graph/112 무엇? 자료구조 노트에 정리함 왜? 이번 주 키워드는 트리와 그래프! 어떻게? 자료 구조의 분류 출처: https://ko.wikipedia.org/wiki/자료_구조 https://bigsong.tistory.com/30?category=965745 무엇? 자료구조 노트에 정리함 왜? 자료구조의 종류와 개념을 전체적인 관점에서 서로 어떻게 연관되어 있고 분류되는지 알 필요가 있다. (지금 어디쯤 공부하고 있는 건지 되짚어보기) 어떻게?

크래프톤정글 2주차; 파이썬 최소 힙, 최대 힙, 우선순위 큐 모듈 및 관련 문제

파이썬에서 heapq 모듈로 최소 힙, 최대 힙 구현하기 출처:https://velog.io/@yyj8771/Python-heapq를-이용한-최소-힙-최대-힙 무엇? heapq 최소 힙, 최대 힙을 만들 때 주의할 점은 디폴트에 최소 힙 구현에 맞춰져 있어서, 최대 힙을 만드려면 push할 때 -1을 곱한 값으로 넣어주고, pop할 때도 -1을 곱한 채로 빼야 정상 작동함! pop할 때 배열이 비어있으면 인덱스 에러 뜸 heap = [] 힙으로 사용할 배열 선언 메소드 heapq.heappush(배열, 값) : 최소 힙에 push heapq.heappop(배열) : 최소 힙에서 가장 최솟값 pop heapq.heappush(배열, -값) : 최대 힙에 값 push -heapq.heappop(배열) : 최..

크래프톤정글 2주차; TIL 3 - 힙, 힙 정렬, 우선순위 큐, 파이썬 deque, 파이썬 print 함수 옵션

2022-11-07 힙 & 힙 정렬 & 우선순위 큐의 개념 출처:https://www.boostcourse.org/cs113/lecture/540275 https://www.edwith.org/intro-data-and-algo-2-2018/lecture/21489?isDesc=false https://www.edwith.org/intro-data-and-algo-2-2018/lecture/21491/?isDesc=false https://jackpot53.tistory.com/6 무엇? heap 구조는 배열이면서 완전 이진 트리(complete binary tree)로 시각화가 가능하고, 왼쪽부터 다음 인덱스의 노드를 채워 간다. 이러한 힙 구조를 유지하면서 부모 노드가 자식 노드보다 항상 큰 값을 가..

크래프톤정글 0주차 intro; 미니프로젝트 1차 발표 피드백

피드백 Q 다른 팀에 비해 기능이 많아보임. 기한 내에 완성할 수 있겠는가? → 제일 중요한 것은 버그 없이 돌아가는 것. (안정성) 무척이나 강조하심. "이렇게 하려고 했는데 여기까지 밖에 못했습니다"를 보고 싶지 않다고 하심. Q 오늘의 메모 여러가지면 스크롤 방식으로 할 것인지 어떻게 할 것인지 A 스크롤 방식으로 할 생각이라고 말함 이거 중요한 건가? 왜 물어보셨을까 → 계획대로 스크롤 방식으로 구현 Q 왜 아이디를 이메일이 아니라 이름으로 했는지 A 정글내에서만 쓸 거라면 특별히 비교적 복잡한 아이디로 할 필요가 없을 듯 해서 Q 비밀번호 찾기 기능은 없어도 될 듯하니 빼는 게 어떨까 나머지 핵심 기능을 완성도 있게 구현하는게 우선이라는 의도로 말씀하신 듯 함 Q 메인 페이지에서 페이지로 넘어가..

크래프톤정글 0주차 intro; 미니 프로젝트 안내

기획서 작성 클라이언트 서버 렌더링이 우리가 입학시험 등에서 했던 것 → 진자2 서버사이드 렌더링은 파이썬 기반, 플라스크 연동 쉬움 로그인 기능은 시간 되면 sns 로그인, 안되면 간략하게라도 넣을 것 기능은 간략해도 완성도있게 (버그 없게!) jwt 인증 방식 로그인 사용하기 발표 후 코치단 3명이서 qna

크래프톤정글 2주차; TIL 2 - 백준 곱셈 문제, 괄호의 값 문제

2022-11-05 곱셈 백준 1629번 파이썬 출처: https://velog.io/@grace0st/곱셈-백준-1629번-파이썬 왜? (AxB)%C = (A%C) * (B%C) % C을 이용했으나 (AxA^B-1)%C = (A%C) * (A^B-1%C) % C 처럼 공식을 세웠고, A^B-1 = A * A^B-2 라고 생각해서 B자리에 B-1을 넣는 재귀 함수를 만들었다. 메모리 초과로 실패. 어떻게? 분할정복으로 해결하는데, 나머지 분배 법칙 (AxB)%C = (A%C) *(B%C) % C 지수법칙 A^m+n = A^m x A^n 을 이용한다! 지수법칙을 따를 때, 참고 블로그처럼 A^11 = A^5 * A^5 * A 이렇게 사용해야하지, 내가 한 것처럼 A^11 = A * A^11-1 이렇게 해버..

크래프톤정글 2주차; TIL 1 - 이진 탐색, 공유기 설치 문제, 함수와 분할정복, 이진 탐색 트리

2022-11-03, 2022-11-04 이진탐색 강의 출처: https://www.edwith.org/knu-algorithm/lecture/170169?isDesc=false 무엇? binary search. 리스트의 범위를 반씩 줄여나가며 탐색하는 방법. 분할정복 알고리즘 설계법을 이용한 방법 中 하나. 왜? 어떤 값을 탐색하기 위함. 완전탐색보다 시간이 덜 든다 (빅O가 logN) 길이가 80인 리스트를 완전 탐색하면 80번 뒤져야 하지만, 이진 탐색은 log80 (계속 이등분 하기 땜에) 어떻게? 값이 정렬되어 있음을 전제함 low, mid, high 값을 지정하고, mid와 low, high의 값을 비교한 뒤, 오른쪽으로 갈 지 왼쪽으로 갈 지 정함. 그러면서 서서히 리스트의 탐색 범위를 줄여..

크래프톤정글 1주차; 문제 풀면서 참고한 것 3

2022-11-02 순열조합 itertools & 순열과 조합의 차이 출처: https://seu11ee.tistory.com/5 https://jwdeveloper.tistory.com/270 https://shoark7.github.io/programming/algorithm/Permutations-and-Combinations 무엇? 순열은 'order’가 중요하여, 순서가 다르면 다른 경우의 수에 해당하지만, 조합은 순서가 상관없다! ex) 순열은 1,2,3,4와 4,3,2,1이 다른 경우의 수이지만, 조합에서 둘은 하나의 경우의 수 파이썬에서 순열, 조합을 도와주는 모듈은 itertools 왜? 완전탐색 할 때 필요 (무턱대고 이론 공부 안하고 시작해서 문제 잘 안 풀렸다. 괜히 이론 공부부터 ..

크래프톤정글 1주차; 문제 풀면서 참고한 것 2

2022-10-30 0!는 1이다 😮 출처: https://johnleeedu.tistory.com/23 왜? 문제에서 팩토리얼 개념을 만나서 아리송해서 찾아 봄 어떻게? 2! = 2 * 1! 3! = 3 * 2! 처럼 n! = n * (n-1)! 이 성립하려면, 1! = 1 * 0! 일때 0!이 1이어야 함! 재귀 깊이 설정하기 출처: https://help.acmicpc.net/judge/rte/RecursionError 왜? 백준 문제 풀다가 가끔 재귀 에러가 뜰 때, 재귀 깊이를 더 높게 설정해주어야 함 어떻게? import sys sys.setrecursionlimit(10**6) set는 sort가 없음! 어떻게 정렬하나? 출처: https://programmer-ririhan.tistory...

크래프톤정글 1주차; 문제 풀면서 참고한 것 1

파이썬 함수 eval, exec 출처: https://chancoding.tistory.com/185 무엇을? eval("문자열로 된 파이썬 코드") : 문자열로 된 파이썬 코드를 실행한 값을 반환함 (return 있음) exec("문자열로 된 파이썬 코드") : 문자열로 된 파이썬 코드를 실행만 함 (return 없음) 왜? sum()처럼 곱셈() 같은 게 있었으면 좋을텐데… 하면서 찾다가 발견! 어떻게? 곱한값 = eval("*".join([str(n) for n in 자연수리스트])) 요런 식으로 사용함 파이썬 정규식 모듈 re 사용하기 출처: http://pythonstudy.xyz/python/article/401-정규-표현식-Regex 무엇? 정규식 (regular expression) ^74..