Career
-
https://school.programmers.co.kr/learn/courses/30/lessons/178871 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 얀에서는 매년 달리기 경주가 열립니다. 해설진들은 선수들이 자기 바로 앞의 선수를 추월할 때 추월한 선수의 이름을 부릅니다. 예를 들어 1등부터 3등까지 "mumu", "soe", "poe" 선수들이 순서대로 달리고 있을 때, 해설진이 "soe"선수를 불렀다면 2등인 "soe" 선수가 1등인 "mumu" 선수를 추월했다는 것입니다. 즉 "soe" 선수가 1등, "mumu" 선수가 2등으로 바뀝니다...
99클럽 코테 스터디 26/99일차 TIL #달리기 경주(미들러)https://school.programmers.co.kr/learn/courses/30/lessons/178871 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 얀에서는 매년 달리기 경주가 열립니다. 해설진들은 선수들이 자기 바로 앞의 선수를 추월할 때 추월한 선수의 이름을 부릅니다. 예를 들어 1등부터 3등까지 "mumu", "soe", "poe" 선수들이 순서대로 달리고 있을 때, 해설진이 "soe"선수를 불렀다면 2등인 "soe" 선수가 1등인 "mumu" 선수를 추월했다는 것입니다. 즉 "soe" 선수가 1등, "mumu" 선수가 2등으로 바뀝니다...
2024.08.16 -
DFS(깊이 우선 탐색) 알고리즘: 기초 개념과 2D 그리드에서의 활용깊이 우선 탐색(DFS, Depth-First Search)은 그래프나 트리에서 널리 사용되는 탐색 알고리즘이다. DFS는 시작 노드에서 출발해 가능한 한 깊이까지 탐색한 후, 더 이상 갈 곳이 없으면 이전 단계로 돌아와 다른 경로를 탐색하는 방식으로 동작한다. 이 글에서는 DFS의 기초 개념과 함께, 2D 그리드에서의 활용 방법을 설명한다.1. DFS의 기본 개념DFS는 그래프나 트리에서 주어진 시작 노드에서 출발하여 모든 노드를 방문하는 알고리즘이다. DFS는 일반적으로 재귀적으로 구현되며, 다음과 같은 기본 구조를 갖는다.def dfs(graph, node, visited): visited.add(node) for ne..
99클럽 코테 스터디 25/99일차 TIL #그래프(미들러)DFS(깊이 우선 탐색) 알고리즘: 기초 개념과 2D 그리드에서의 활용깊이 우선 탐색(DFS, Depth-First Search)은 그래프나 트리에서 널리 사용되는 탐색 알고리즘이다. DFS는 시작 노드에서 출발해 가능한 한 깊이까지 탐색한 후, 더 이상 갈 곳이 없으면 이전 단계로 돌아와 다른 경로를 탐색하는 방식으로 동작한다. 이 글에서는 DFS의 기초 개념과 함께, 2D 그리드에서의 활용 방법을 설명한다.1. DFS의 기본 개념DFS는 그래프나 트리에서 주어진 시작 노드에서 출발하여 모든 노드를 방문하는 알고리즘이다. DFS는 일반적으로 재귀적으로 구현되며, 다음과 같은 기본 구조를 갖는다.def dfs(graph, node, visited): visited.add(node) for ne..
2024.08.16 -
문제 이해1번 => A 2번 => B 3번 => C 1같은 문자가 여러번 할당, 키 하나에 같은 문자 여러번 할당 할당 안된 경우 최소 몇번 눌러야 문자열 작성 가능한지 => 완전 탐색 keymap = ["ABACD", "BCEFD"] 0번키 누르면 나오는 배열: ABACD 1번키 누르면 나오는 배열: BCEFD -> ABCD (0,1), (1,1), (1,2), (0,5) => 9 특정 문자가 특정 키에서 가장 먼저 나오는 것을 찾고 그 인덱스를 반환 없는 경우 -1 return lst = [] keymap => dic으로 만들고 target을 돌면서 for words in target: cnt = 0 for word in words: word 가 있는지 ..
99클럽 코테 스터디 24/99일차 TIL #대충 만든 자판(미들러)문제 이해1번 => A 2번 => B 3번 => C 1같은 문자가 여러번 할당, 키 하나에 같은 문자 여러번 할당 할당 안된 경우 최소 몇번 눌러야 문자열 작성 가능한지 => 완전 탐색 keymap = ["ABACD", "BCEFD"] 0번키 누르면 나오는 배열: ABACD 1번키 누르면 나오는 배열: BCEFD -> ABCD (0,1), (1,1), (1,2), (0,5) => 9 특정 문자가 특정 키에서 가장 먼저 나오는 것을 찾고 그 인덱스를 반환 없는 경우 -1 return lst = [] keymap => dic으로 만들고 target을 돌면서 for words in target: cnt = 0 for word in words: word 가 있는지 ..
2024.08.15 -
'''경우의 수한 번에 1칸 또는 2칸1로 개수 만들고,2개씩 줄이면서 개수 늘리고2의 위치 개수1로 만들어진 숫자 1개2의 개수 = 0~ n//2개2의 개수 0개~ n/2total num = n2의개수, 1의 개수 = a, n-'''import mathdef solution(n): total_count = 0 for cnt_2 in range(0, n // 2 + 1): cnt_1 = n - 2 * cnt_2 total_steps = cnt_1 + cnt_2 # 조합의 개수 계산: total_steps! / (cnt_2! * cnt_1!) combinations = math.factorial(total_steps) //..
99클럽 코테 스터디 22/99일차 TIL #멀리 뛰기(미들러)'''경우의 수한 번에 1칸 또는 2칸1로 개수 만들고,2개씩 줄이면서 개수 늘리고2의 위치 개수1로 만들어진 숫자 1개2의 개수 = 0~ n//2개2의 개수 0개~ n/2total num = n2의개수, 1의 개수 = a, n-'''import mathdef solution(n): total_count = 0 for cnt_2 in range(0, n // 2 + 1): cnt_1 = n - 2 * cnt_2 total_steps = cnt_1 + cnt_2 # 조합의 개수 계산: total_steps! / (cnt_2! * cnt_1!) combinations = math.factorial(total_steps) //..
2024.08.13 -
def solution(n): _curr, _next = 0, 1 for _ in range(n): _curr, _next = _next, _curr + _next answer = _curr % 1234567 return answer 피보나치 수열 문제를 풀면서 이전에 생각없이 넘어갔다가 이번에 문제를 풀고 확인해야 하는 부분이 생겼다.# 1)_curr = _next_next = _curr + _next# 2)_curr, _next = _next, _curr+_next 어차피 할당을 하는거니 한 줄로 안써도 되는거 아닌가? 하고 문제를 풀었지만 댕같이 실패.값을 하나 하나 넣어봐야 확인이 가능했고 이를 chatgpt를 통해 확인해보았다.코드에서 _c..
99클럽 코테 스터디 21/99일차 TIL #피보나치 수(미들러)def solution(n): _curr, _next = 0, 1 for _ in range(n): _curr, _next = _next, _curr + _next answer = _curr % 1234567 return answer 피보나치 수열 문제를 풀면서 이전에 생각없이 넘어갔다가 이번에 문제를 풀고 확인해야 하는 부분이 생겼다.# 1)_curr = _next_next = _curr + _next# 2)_curr, _next = _next, _curr+_next 어차피 할당을 하는거니 한 줄로 안써도 되는거 아닌가? 하고 문제를 풀었지만 댕같이 실패.값을 하나 하나 넣어봐야 확인이 가능했고 이를 chatgpt를 통해 확인해보았다.코드에서 _c..
2024.08.12 -
'''최대 2명, 무게제한 없음ex) [70kg, 50kg, 80kg, 50kg], 무게제한 100kg => 50 + 50구명보트를 최대한 적게 사용하여 모든 사람을 구출[70, 50, 80, 50] 100제일 작은수 기준으로 합이 limit 이하인 경우'''from collections import Counterdef solution(people, limit): # counter = Counter(people) sorted_people = sorted(people) # print(sorted_people) sum = 0 cnt = 0 answer = 0 # [50, 50, 70, 80] for person in sorted_people..
99클럽 코테 스터디 19/99일차 TIL #구명보트(미들러)'''최대 2명, 무게제한 없음ex) [70kg, 50kg, 80kg, 50kg], 무게제한 100kg => 50 + 50구명보트를 최대한 적게 사용하여 모든 사람을 구출[70, 50, 80, 50] 100제일 작은수 기준으로 합이 limit 이하인 경우'''from collections import Counterdef solution(people, limit): # counter = Counter(people) sorted_people = sorted(people) # print(sorted_people) sum = 0 cnt = 0 answer = 0 # [50, 50, 70, 80] for person in sorted_people..
2024.08.11