일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 테스트주도개발
- 개발자로살아남기
- datalake
- clean code
- Raw-Request-URI
- 데이터플랫폼
- 개발자
- 데이터레이크
- 코딩인터뷰
- 알고스팟
- 함수형 사고
- 개발7년차매니저1일차
- wait region split
- 켄트백
- 동시성
- coursera
- kafka
- 회고
- 단위테스트
- 해커컵
- 박종천
- 데이터야놀자
- hackercup2017
- 데이터유통
- 클린코드
- 실전사례
- functional thinking
- 2017회고
- 2016년회고
- spray
- Today
- Total
목록전체 글 (97)
Software Engineering Note
문제: XHAENEUNG / 구현 처음에는 map에다가 넣고 어쩌고 하려다 그냥 무식하게 풀었다. 힌트 - 결국 모든 알파벳이 한 번씩 사용되어야 하므로 정렬하면 비교가 쉬워진다. 코드: https://github.com/xgate/algospot/blob/master/IMPL/XHAENEUNG.cpp
문제: DARPA / 동적계획법, 이진탐색 처음에 greedy로 접근했다가 몇 번 물먹은 문제다. 잊고 지내다가 알고리즘 책(프로그래밍 콘테스트 챌린징)에서 유사한 문제를 보고 다시 도전해서 성공했다. 핵심전략은 다음과 같다. 모든 카메라에 대해, 임의의 두 카메라 간격을 d로 만들 수 있는지 확인한다. 1. d값은 입력으로 주어진 간격의 최대 값부터 시작한다.2. 만약 모든 카메라를 d간격 이상으로 설치할 수 있다면 d값을 늘려서 시도해본다. 왜? 가장 가까운 카메라 간격을 최대화 시켜야 하니까.3. 만약 실패하면 d값을 줄여서 시도해본다. 이렇게 d값을 조절해가면서 범위를 좁혀나간다. 2, 3번 과정에 이진탐색이 적용된다. 2번일 경우 left 값을 mid값으로 한다. 3번일 경우 right 값을 m..
문제: LUCKYNUM / 그리디(탐욕적인 방법) [ 해결책/후기 ] 문제를 보자마자 떠오르는 생각은 주어진 입력으로 구성된 모든 숫자를 만들고 그 숫자 중에서 정답을 찾는 것이다. 그러나 최대 200자리까지 입력되는데 이 방법을 썼다가는 TLE가 뻔하다. OTL 그러니 다른 접근 방법을 찾아야하는데 내가 접근한 방법은 lucky number에 가까운 수를 만들어가는 것이었다. 예를 들면 k=6일때 입력 값 n중에서 6이 입력되었는지 살펴보고 6을 먼저 찜하는 것이다. 이 경우, 첫 자리 수를 6을 선택하면 최선의 선택이 되기때문이다. (6이 또 있으면 역시 다음자리 수로 6을 선택하는 것이 최선이다.) 또 이런 생각도 해볼 수 있다. k=6이고 6은 입력 된 숫자에 없고, 5와 7이 입력값에 있을 경우..