분류 전체보기
-
AWS Korea Solutions Architect 채용 절차 후기카테고리 없음 2025. 2. 16. 15:38
약 반 년간 진행되었던 AWS Korea Solutions Architect 직무의 채용 절차에 대해 후기를 남겨보려 한다. 서류 전형채용 공고를 확인한 후 영문으로 이력서를 작성하였고, 제출한 후 약 일주일 후 서류 합격 결과를 통보받았다. 영문 이력서는 템플릿을 여럿 찾아본 후 가장 심플하고 플랫한 양식으로 작성하였다. Summary, Education, Experiences, Skills, Miscellaneous 항목으로 나뉜 이력서에 학부생 시절 했던 다양한 경험들을 간추려 기입했다. Online Assessment이후에는 간단한 Online Assessment를 진행하였다. 내가 어떤 유형의 사람인지 약간은 mbti 같은 검사를 진행하였고, 선택한 분야의 객관식 테크 질문들에 응답한 후 일할..
-
BOJ 11000 강의실 배정코딩테스트 2024. 4. 17. 22:17
기 직전에 풀었던 회의실 배정 문제와 매우 흡사해서, 보자마자 같은 형식으로 코드를 작성했다. 아래는 해당 코드이다. import sys from collections import deque n = int(input()) l = [] for _ in range(n): s,e = map(int, sys.stdin.readline().strip().split()) l.append((s,e)) l = sorted(l, key = lambda x: x[0]) l = sorted(l, key = lambda x: x[1]) cnt = 0 while l: tmp = [] start, end = l[0][0],l[0][1] tmp.append((start,end)) for s,e in l[1:]: if s >= en..
-
BOJ 1931 회의실 배정 python코딩테스트 2024. 4. 17. 22:01
기 이 문제를 어떻게 풀어야 할 지 생각하다가, 회의가 시작하는 시간이나 회의의 길이도 중요하지만 끝나는 시간이 더 중요하다는 사실을 깨달았다. 예를 들어 다음과 같은 경우를 생각해보자. 1 4 라는 입력의 경우, 2 3이나 3 3보다 회의 길이가 길지만 빨리 끝마치므로, 이후에 더 많은 다른 회의가 시작될 수 있다. 반면에 회의 길이가 아무리 짧아도 마치는 시간이 늦으면 회의실을 배정받을 수 없다. 승 그래서 회의가 마치는 시간을 기준으로 정렬하기로 했다. 정렬을 하고 나서 확인했더니 테스트케이스와 순서가 똑같았다. 이 문제에서는 의도적으로 마치는 시간을 기준으로 정렬된 회의 시간을 제공한 것이다. 전 시작 시간과 관계 없이 가장 먼저 마치는 회의가 맨 앞에 오게 되고, 이 회의를 배정표에 집어넣었다...
-
BOJ 1012 유기농 배추 python코딩테스트 2024. 4. 16. 14:29
마찬가지로 기본적인 그래프 탐색 문제이다. 지금까지 풀었던 것들과 한 가지 다른 점은 그래프의 형태이다. 기 그래프를 지금과 다른 형식으로 작성한다. 기본적으로 m * n 행렬을 만든 후, 배추의 좌표들을 입력하여 그래프를 완성한다. 마찬가지로 bfs를 사용하여, 이번에는 그래프가 총 몇 개 나오는 지 카운트해야 한다는 사실을 파악한다. 승 이런 형식의 문제를 풀 때, 약간의 정해진 포맷이 있음을 검색을 통해 알게 되었다. 이 문제를 풀어봄으로써 해당 포맷에 익숙해지는 것을 목표로 하였다. 1. 그래프를 탐색하면서, 배추가 들어있는, 즉 내용이 1인 좌표를 찾으면, 그 좌표에서부터 탐색을 시작한다. 2. 해당 좌표의 상하좌우를 탐색한다. 이 때 앞서 언급한 포맷을 이용한다. 3. 큐를 이용해 bfs를 진..
-
BOJ 2606 바이러스 python코딩테스트 2024. 4. 16. 14:08
기 이 문제는 dfs 혹은 bfs로 그래프를 순회하면서 1번과 연결돼있는 노드의 수를 카운트 하는 기본적인 그래프 탐색 문제이다. 승 우선 인접 리스트로 그래프를 만들고, bfs를 이용해서 연결된 노드들을 찾아냈다. dfs를 사용하면 구현은 더 간단하겠지만 시스템 상의 스택이 허용하는 범위에서의 탐색만 가능하다는 한계가 명확하기에, bfs로 구현하려고 했다. 전 그래프를 만들 때, 인접 노드를 오름차순으로 탐색하므로 정렬을 해주었다. 1. 큐의 모든 원소가 사라질 때 까지 맨 앞 노드를 pop한다. 2. 그 노드의 미방문 인접 노드들을 방문 처리한다. 3. 방문 처리한 노드들에 대해 원하는 동작을 구현한다 -> 여기서는 cnt를 1 증가시킨다. 4. 방문 처리한 노드들을 다시 큐에 집어넣는다. 이 동작이..
-
BOJ 1260 BFS와 DFS python코딩테스트 2024. 4. 16. 13:46
본격적으로 그래프 탐색에 대한 공부를 시작하게 됐는데, 역시 처음에는 가장 기본에 충실한 문제를 풀어봐야 한다. 이론으로써 알고 있는 절차를 그대로 코드에 녹여낼 수 있는 문제였다. 기 문제를 풀기에 앞서, 기본적인 DFS와 BFS에 대한 내용을 공부했다. DFS(depth first search)는 깊이 우선 탐색이다. 그래프를 탐색할 때, 더 이상 인접한 노드가 없을 때까지 그래프를 파고든다. 인접한 노드가 없을 때까지 방문하는 모든 노드들을 스택 자료구조에 넣어야 하기 때문에, 자연스럽게 시스템 상의 스택을 이용하는 재귀 함수로 구현을 하게 된다. BFS(breadth first search)는 너비 우선 탐색이다. 그래프를 탐색할 때, 한 노드와 인접한 노드를 차례대로 방문하는 과정을 반복한다. ..
-
BOJ 1149 RGB 거리 python코딩테스트 2024. 4. 16. 12:55
문제의 조건은 한 마디로, 1번부터 N번까지의 집이 이전 집과 다른 색깔이어야 한다는 것이다. 이 때 각 색을 칠하는 데 드는 비용이 다를 때 모든 집을 칠하기 위한 최소 비용을 구해야 한다. 기 n-1번째까지 최소 비용을 구할 수 있다면, 마지막 n번째 최소 비용을 더함으로써 쉽게 답을 구할 수 있을 거라는 생각이 들었다. 승 하지만 어떻게? 지금까지 풀었던 기본적인 dp 문제들은 일차원 리스트에 간단하게 점화식의 항들을 작성할 수 있었는데, 이 문제는 조금 더 생소했다. 지금까지 풀었던 것과 동일한 방식으로 풀 수가 없는 문제였다. 고민을 거듭한 결과, n번째 집을 칠하는 최소 비용은 n-1 번째 최소 비용 후보들의 최솟값으로써 결정된다는 사실을 알아냈다. 그러기 위해서는 메모리를 조금 다른 방식으로..
-
BOJ 11726 2×n 타일링 python코딩테스트 2024. 4. 16. 12:29
개인적으로는 BOJ 9095 1,2,3 더하기 문제랑 비슷한 느낌이 있었다. 전형적인 dp 문제였다. BOJ 9095 1,2,3 더하기 python 기 2n 타일을 채우기 위해 2(n-1) 타일을 채우는 방법의 수 등을 이용할 수 있을 것 같다는 생각이 들었고, 점화식을 세우기 시작했다. 승 점화식을 세우기 위해서는 2*(n-2) 타일을 채우는 방법의 수 까지만 고려하면 된다고 생각했다. 타일의 크기가 21이기 때문에, (n-2)번 타일을 채우면 방법이 있으면 그 뒤 남은 22 타일을 어떻게 채울 지 고민하는 문제이기 때문이다. 전 그러면 (n-2)번째 이후의 타일을 어떻게 채우느냐가 관건이다. (n-2)번째 이후의 2*2 타일을 채우기 위해선 , 가로로 두 개의 타일을 두는 방법과 세로로 두 개의 타일..