Loading...
2022. 1. 19. 22:30

시간을 줄이는 효율적인 코딩 기술

1. 문제 https://programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr 카카오톡 오픈채팅방에는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오픈 채팅방을 개설한 사람을 위해, 다양한 사람들이 들어오고 나가는 것을 지켜볼 수 있는 관리자창을 만들기로 했다. 채팅방에 누군가 들어오면 다음 메시지가 출력된다. “[닉네임]님이 들..

합의 차이가 최소가 되는 분할 1편

1. 알고리즘 1 이상의 양의 정수가 리스트 내에 존재 하나의 리스트를 두개의 리스트로 분할하고자 하는데 각 리스트의 수의 합의 차이가 최소가 되도록 분할하고자 한다. 합의 차이의 최솟값을 return 가장 쉬운 방법은 itertools.combinations를 이용해서 완전 탐색을 하는 것 그러나 완전 탐색을 하면 효율성이 매우 떨어짐 먼저 초기 변수를 지정함 mmr은 주어진 전체 리스트 n은 리스트의 인덱스 지정 team1은 첫번째 리스트의 정수 총합 team2는 두번째 리스트의 정수 총합 table은 dynamic programming table def findMinAbsDiff(mmr, n, team1, team2, table): # Base case: if the list becomes empt..