본문 바로가기

전체 글243

[프로그래머스💯] 코딩테스트 연습 > 연습문제 > 문자열 내 p와 y의 개수 해답) def solution(s): return True if s.count('p')+s.count('P') == s.count('y')+s.count('Y') else False 풀이) 이건 솔직히 설명따윈 필요없다 * 이 문제 및 로고의 저작권은 Programmers에 있습니다. 출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges 2020. 3. 13.
[프로그래머스💯] 코딩테스트 연습 > 연습문제 > 두 정수 사이의 합 / Python 문제풀이 해답) from functools import reduce def solution(a, b): return reduce(lambda x, y: x+y, range(a, b+1)) if a 2020. 3. 12.
[프로그래머스💯] 코딩테스트 연습 > 이분탐색 > 입국심사 / Python 문제풀이 해답) def solution(n, times): times.sort() start = times[0] * n / len(times) end = times[len(times)-1] * n / len(times) def find(s, e): if s == e: return s mid = int((s+e)/2) nSum = 0 for time in times: nSum += mid//time if nSum > n: break if nSum >= n: return find(s, mid) else: return find(mid+1, e) answer = find(start, end) return answer 풀이) 0. 우리가 구하고자 하는 것 : 모든 사람이 심사를 받는데 걸리는 시간 1. 답의 범위를 좁혀준.. 2020. 3. 9.
[프로그래머스💯] 코딩테스트 연습 > (DFS/BFS) > 여행경로 / Python 문제풀이 해답) from collections import defaultdict def solution(tickets): START = "ICN" citiesDests = defaultdict(list) for ticket in tickets: # 한도시당 edge 수를 계산 citiesDests[ticket[0]].append(ticket[1]) for city in citiesDests.keys(): citiesDests[city].sort() # print(citiesDests) stack = [] res = [] def Go(start): stack = [] stack.append(start) if len(citiesDests[start]) == 0: # print("현재 stack => ", stack).. 2020. 3. 4.
[Node.js] Node.js 실행중인 서버 종료하기 / 노드 서버 종료 / localhost 서버 종료 / address already in use 코드상으로 종료하기 process.exit() 을 이용한다. process.exit(0 혹은 생략) : 성공 코드로 종료 process.exit(1) : 실패 코드로 종료 cmd 를 이용해 종료하기 ctrl+C 를 이용하면 정상 종료된다. 위와 같이 작업을 끝내냐는 물음이 나오면 y를 입력하면 된다. 해당 서버의 cmd 가 없을때 강제 종료하기! 때때로 우리는 노드를 정상종료하지 않고 프로그램을 끝낸다. 그런 경우, CMD 에서 새로운 로컬호스트 서버를 실행하면 이미 실행중이라는 문구가 나온다. 이때는 방법이 2가지가 있는데 1. localhost 포트를 직접 종료하기. https://programming119.tistory.com/12?category=857957 [기타] localhost 종료하기 /.. 2020. 3. 2.
[프로그래머스💯] 코딩테스트 연습 > 동적 계획법 > 카드 게임 해답) import sys sys.setrecursionlimit(10**6) global cached cached = [[-1 for _ in range(2000)] for _ in range(2000)] def dump(l, r, L, R, lA, rA): global cached if l == L or r == R: return 0 if cached[l][r] != -1: return cached[l][r] if rA[r] < lA[l]: cached[l][r] = max(dump(l+1, r, L, R, lA, rA), dump(l+1, r+1, L, R, lA, rA), (dump(l, r+1, L, R, lA, rA) + rA[r])) else: cached[l][r] = max(dump(l+.. 2020. 3. 2.
[프로그래머스💯] 코딩테스트 연습 > 동적 계획법 > N으로 표현 (JavaScript) 해답) const cached = Array(10) .fill(null) .map(() => Array()) function N_n(N, n) { let answer = 0 for (let i = 0; i { if (v1 !== 0) Nn.push(parseInt(v2 / v1, 10)) if (.. 2020. 2. 28.
[프로그래머스💯] 코딩테스트 연습 > 동적 계획법 > 정수삼각형🔺 해답) def solution(triangle): answer = 0 length = len(triangle) # length+1 한 이유 : 맨밑줄 index 넘어가도 오류안나게 maxPath = [[0 for _ in range(length+1)] for _ in range(length+1)] maxPath[0][0] = triangle[0][0] for i in range(length-1): for j in range(i+1): # 왼쪽 밑 보고 갱신 if maxPath[i][j] + triangle[i+1][j] > maxPath[i+1][j]: maxPath[i+1][j] = maxPath[i][j] + triangle[i+1][j] # 오른쪽 밑 보고 갱신 if maxPath[i][j] + t.. 2020. 2. 25.