분류 전체보기 279

[Python][백준] 11725. 트리의 부모 찾기 / 트리,재귀,DFS,BFS (S2)

🔗링크 :  https://www.acmicpc.net/problem/11725해당 문제는 BFS, DFS 방식 모두 다 풀 수 있다 .🗒️BFS 풀이import sysfrom collections import dequeN = int(sys.stdin.readline())node = [[] for _ in range(N + 1)]parents = [0] * (N + 1)parents[1] = 1for i in range(1, N + 1): node[i] = []for _ in range(N - 1): a, b = map(int, sys.stdin.readline().split()) node[a].append(b) node[b].append(a)q = deque([1])while ..

정글 7기 18, 19일차 / CS:APP(캐시, 운영 체제), 주말 회고

🐸  9월 21일 18일차요즘 대부분의 시간을 CS 공부에 많은 시간을 들이고 있다. 그리고 역시 오늘 토요일도 많은 시간을 CS 공부로 보냈고,빈 백지 상태여서 그런지 CS에 대한 지식들이 새롭고 재밌다.  생각보다 많이 복잡하고 헷갈리는 것들도 많은데, 모르는 부분에 대해 정글러들과 같이 생각을 공유하면, 좋은 인사이트들이 나오기도 한다.  오전은 컴퓨터 구조 정리에 많은 시간을 들였고,오늘 CS 스터디를 하는 날이기 때문에, 스터디 범위까지 공부를 하였다. (이번 공부 범위는 CS:APP 1.6 ~ 1.7 까지 ) 저장장치들의 계층 구조를 간단하고 정리하였고,로컬디스크 또한 하나의 캐시가 될 수 있음에 신기했다.내가 생각하는 캐시는 레지스터 가까이에 있는 임시 저장장치라 생각했는데,비단 그 뿐만 ..

😀 Jerry/일상 2024.09.23

정글 7기 16,17일차 / CS:APP 스터디 준비

🐸  9월 19일 16일차19일 목요일 오후 1시에 컴퓨터 시스템 스터디에서 발표가 있었다. 뭐 발표라 할 것도 없지만, CS:APP 책의 정해진 주제를 맡아서 설명을 해주는 방식이다. 내가 맡은 주제는 1.1 ~  1,.5까지의 범위이다.  맡은 주제의 페이지는 겨우 12페이지 정도밖에 안되는데, 생각보다 더 깊게 이 책을 파고 드는 것 같다.이렇게 하는게 좋은지 안좋은지는 잘 모르지만,우선 정글에서 주어진 범위도 적었고,무엇보다 1장이 다른 장의 기반이 되기때문에 더 깊게 보고 있는 것 같다. 각설하고 내가 준비한 것들의 키워드들을 적어본다. (구체적인 내용은 다른 포스팅에 했으니 적지 않을 예정)  우선 이 책을 관통하는 주제는 소프트웨어의 컴포넌트를 이해하고,어떻게 프로그램의 성능과 정확성에 어..

😀 Jerry/일상 2024.09.21

크래프톤 정글 7기 10, 11, 12 일차 + 추석 / 회고록, 알고리즘 팁, CTO 인터뷰

정글에 온지 벌써 10,11,12일차 + @ 가 되었다. 매주 목요일 정글에서는 팀이 바뀌고, 새로운 주제가 발제된다.지난 주제에 좋은 내용들이 많았고, 정리하고 싶은 내용들이 있어서 이번에는 그것들을 주제로 해야겠다. 그리고 내가 느끼거나 생각한 것 들에 대해 정리해봐야겠다.  처음에 목적은 TIL (Today I learned)이였지만, 점점 반성문이 되어간다...  정글의 스케줄은 추석때문에 한주가 미뤄졌다. 그래서 한주간은 여유롭게 어느정도 정리할 시간을 갖으려고 한다. 정글 Compass에 있는 좋은 글도 정리하고 생각도 정리해보자.   🐸 9월 12일 10일차10일차에는 알고리즘 테스트를 보았고, 3개 중에 2개를 맞았다. 문제 난이도는 브론즈1, 실버 1~3 정도였던거 같다.  개인적으로 ..

😀 Jerry/일상 2024.09.18

[Python][백준] 11286. 절댓값 힙 / 우선순위 큐(S1)

🔗링크 :  https://www.acmicpc.net/problem/11286🗒️파이썬 코드 풀이import sysimport heapqinput = sys.stdin.readlineN = int(input())heap = []for _ in range(N): num = int(input()) if num == 0 : if heap: print(heapq.heappop(heap)[1]) pass else : print(0) else: heapq.heappush(heap,(abs(num),num)) 1. 최대, 최소 관련된 문제가 나오면 heap을 생각해봐야한다. 2. 조건에 따라 he..

[Python][백준] 11053. 가장 긴 증가하는 부분 수열/ DP (S2)

🔗링크 :  https://www.acmicpc.net/problem/11053🗒️파이썬 코드 풀이N = int(input())lst = list(map(int,input().split()))dp = [1] * N for i in range(1,len(lst)): for j in range(i): if lst[i] > lst[j] : dp[i] = max(dp[i],dp[j]+1)print(max(dp)) 1. 이전 값들은 계속 다음 값들에 영향을 주기 때문에 DP를 생각한다.  2. 브루트포스 방식으로 하나 하나 조사를 하고, 자신보다 작은 경우 dp 값을 갱신해준다. 3. 갱신 할 때, 가장 큰 값들만 갱신되게 하면 되므로 max 함수를 이용한다.  4. 이후..