목록2018/02 (4)
Inor
- 문제 : https://www.codeground.org/practice/practiceProblemView (codeground에 로그인 해야지 열람 가능합니다.) 최소 비용을 찾는 문제입니다. 전체 경로와 각 경로마다 비용과 할인권이 주어집니다. 시작 위치에서 도착 위치까지 이동하는 모든 경로 중, 가장 비용이 적게 드는 경로에서 지불해야하는 비용이 할인권보다 많으면 할인권을 구매합니다. P(1
- 왜 아이폰? 자바가 익숙하고 안드로이드 애플리케이션 개발 경험도 있지만 갖고 있는게 아이폰 5s와 맥북 뿐입니다. 안드로이드 폰도 없고 새로운 안드로이 폰을 구매할 여유도 없습니다. 그러면 그냥 안하면되지 왜 하느냐? 재미있을거 같아서 시작했습니다. 그리고 필요한 애플리케이션을 직접 개발해서 사용해보고 싶었기 때문에 시작했습니다. 블로그에는 따로 올리지 않고 깃허브를 이용해서 프로젝트를 진행 사항을 매번 업데이트하는 형식으로 진행해보려고 합니다. 지금은 스탠포드의 swift 강의를 들으면서 예제를 만들어보는 중 입니다. 이후에 직접 서버와 연동되는 그럴듯한 애플리케이션을 만들고 직접 사용하겠습니다! - GitHub : https://github.com/inhyuck222/LearnSwift
- 합병 정렬 분할 정복 기법을 사용한 정렬 알고리즘 입니다. 분할 정복 기법은 분할하면서 정복하는 방법과 분할이 끝날때 까지 분할 하고 합치면서 정복하는 방법이 있습니다. 합병 정렬은 분할이 안될때까지 분할 한 후에 합병하며 정렬하는 방식입니다. 분할하는 방법과 병합하는 방법을 그림으로 설명하겠습니다. 1. 분할 4 7 6 2 5 3 1 8 먼저 전체 배열을 반으로 나눕니다. 4762 531 8 이후에 반으로 분할이 안될때까지 분할을 반복합니다. 2. 정복 정복하면서 분할된 공간끼리 정렬을 합니다. 47625 31 8 먼저 파란색 영역의 4와 7 값을 비교해서 4를 7의 앞에 위치하도록 해줍니다. 6과 2의 경우에는 2가 6보다 작으니 2를 6의 앞에 위치 시켜줍니다. 이러한 방법으로 (5,3)과 (1..
- 문제 : https://www.acmicpc.net/problem/10814 주어진 회원들의 나이 순으로 정렬하고 나이가 같을 경우에는 먼저 등록한 순서로 정렬하는 문제 입니다. 등록한 순서는 입력 순서와 동일합니다. - 풀이 단순하게 나이 순서로 정렬 해주고 입력 순서를 저장했다가 입력 순서대로 정렬해주면 되는 문제인줄 알았습니다. 그래서 퀵 정렬을 2번 사용해서 나이순으로 먼저 정렬해주고, 나이가 같은 배열을 전체 배열에서 left와 right 인덱스로 나눠서 등록 순서로 배열해주었습니다. 그런데 문제를 풀다보니 계속 틀렸다고해서 인터넷을 찾아봤습니다. 알고보니 stable sort라는 것이 있었고 stable sort는 같은 값일 경우에 순서를 바꾸지 않고 정렬해주는 방법이었습니다. 3 2 1 ..