-
2018 고려대학교 프로그래밍 경진대회 (KCPC) 출제 후기
이 포스트는 2018년 고려대학교 프로그래밍 경진대회 출제 과정에 있었던 일들과 대회의 지향점 및 결과 및 사견을 다룹니다. 원래 대회가 끝나고 바로 쓰고 싶었으나 대회 1주일 후가 기말고사이기도 했고 준비가 워낙에 힘들었기 때문에 한 달이 지난 지금 쓰게 되었습니다. 우선 본 대회를 성공적으로 마무리해주신 운영진과 출제진에게 감사하다는 말을 드리고 싶습니다. 또, 본 대회의 규모 확장에 필수불가결한 기여를 해주신 Startlink, sooho, wishket, NAVER D2, vcnc, 삼성 소프트웨어 멤버십, 고려대학교 정보대학 SW중심대학, 정보보호학부 및 정보보호대학원과 관계자 분들께 감사의...
-
Kotlin Basic
이번 포스팅에서는 기존에 자바로 개발하던 안드로이드 프로젝트를 2017년부터 정식으로 구글에서 안드로이드 언어로 채택된 코틀린을 사용하여 개발해보고자 기본 문법을 공부한 내용에 대해서 다루고 있습니다. 목차는 다음과 같습니다. [ 목차 ] Kotlin이란? Kotlin의 장점 Kotlin 기본 문법 Kotlin이란? Kotlin은 2011년에 IntelliJ를 만든 JetBrain이 공개한 프로그래밍 언어입니다. 안드로이드 개발 툴인 Android Studio는 IntelliJ를 기반으로 만들어진 프로그램입니다. 따라서 JetBrain이 만든 Kotlin을 완벽하게 지원합니다. 또한 2017년에 구글에서 안드로이드의 공식 언어로 채택되었습니다. Kotlin의 장점 간결한 문법 변수를 Nullable과 NotNull로 나눔 (Null...
-
그래프 모델링 - 최단경로
서론 실생활의 다양한 문제들은 (유향)그래프로 표현이 가능합니다. 이 포스트에서는 문제들을 그래프로 변형하는 방법과, 그래프로 변형하여 문제를 간단하게 푸는 방법에 대해 소개합니다. 그래프 “내가 가고 싶은 도시들이 있고, 그 도시들 사이에 교통 수단을 표현하려면 어떤 방법을 써야할까요?” 그래프(graph)는 정점(vertex, 주로 $V$ 로 표기)와 간선(edge, 주로 $E$ 로 표기)로 이루어진 구조입니다. 각 정점은 임의의 집합입니다. 즉, 아무것이나 될 수 있습니다. 각 간선은 정점 두개를 잇는 선입니다. 이 때, 각 정점의 순서가(즉, 방향이) 있으면 유향그래프, 없으면 무향그래프라고 말합니다....
-
Thompson Sampling 소개 및 non-stationary MAB 문제 해결
이번 포스트에서는 Multi Armed Bandit 문제와 Thompson sampling을 소개하고 non-stationary MAB를 해결하는 간단한 알고리즘 중 하나인 Discounted Thompson Sampling에 대해 알아보려고 합니다. 이 알고리즘은 Vishnu Raj, Sheetal Kalyani의 논문 Taming Non-stationary Bandits: A Bayesian Approach에 자세히 소개되어 있습니다. 이 논문에서는 또 하나의 알고리즘 Discounted Optimistic Thompson Sampling(dOTS)을 제안했지만 본 포스트에서는 다루지 않겠습니다. Multi Armed Bandit, Thompson sampling에 대한 소개글은 Daniel Russo, Benjamin Van Roy, Abbas Kazerouni, Ian Osband, Zheng Wen의 A Tutorial on Thompson Sampling을...
-
C++ Boost 라이브러리를 Windows XP 에서 동작하도록 빌드하기
안녕하세요~ 반갑습니다! C++ 개발자 여러분~ boost 많이 쓰시죠?? 저도 boost 참 좋아합니다 ㅎㅎ 이렇게 좋은 boost 를 Windows XP/2003 환경에서 사용할 때는 그냥 일반적인 방법으로는 사용이 불가능한데요. 그래서 오늘은 Windows XP 환경에서 동작하도록 boost 를 빌드하는 방법에 대해서 알아보도록 하겠습니다! » 이 글을 좀 더 좋은 가독성으로 읽기 « 참고로 제가 설명할 방법은 100% 완벽하게 검증된 방법은 아니며, 제가 조사/연구를 통해 알아낸 방법입니다. 따라서 문제가 있을 수도 있으므로 참고자료정도로만 사용해주시면 감사하겠습니다. 그리고 이 포스팅에서는 Visual...