공부(Archive)
-
BOJ 10775: 공항공부(Archive)/BOJ 2020. 5. 6. 15:15
https://www.acmicpc.net/problem/10775 10775번: 공항 문제 오늘은 신승원의 생일이다. 박승원은 생일을 맞아 신승원에게 인천국제공항을 선물로 줬다. 공항에는 G개의 게이트가 있으며 각각은 1에서 G까지의 번호를 가지고 있다. 공항에는 P개의 비행기가 순서대로 도착할 예정이며, 당신은 i번째 비행기를 1번부터 gi (1 ≤ gi ≤ G) 번째 게이트중 하나에 영구적으로 도킹하려 한다. 비행기가 도킹된 게이트에는 다른 비행기가 도착할 수 없다. 이러한 사고가 일어나면 공항이 폐쇄되고, 이후 어떤 비행기도 도착할 www.acmicpc.net 요즘 공부를 너무 게을리했기에 간만에 감을 찾고자 BOJ를 켰다. 딱히 눈에 띄는 문제가 없어 단계별로 풀어보기나 차례대로 풀고자 하여 찾..
-
BOJ 2613: 숫자구슬공부(Archive)/BOJ 2020. 2. 20. 15:32
https://www.acmicpc.net/problem/2613 2613번: 숫자구슬 첫째 줄에 구슬의 개수 N과 그룹의 수 M이 주어진다. 둘째 줄에는 각 구슬이 적혀진 숫자가 왼쪽부터 차례로 주어진다. N은 300 이하의 자연수, M은 N이하의 자연수이며, 구슬에 적혀진 숫자는 100 이하의 자연수이다. www.acmicpc.net 처음 문제를 보고 이분 탐색을 이용한다면 문제를 쉽게 해결할 수 있으리라 생각하고 구현한 후 제출하였다. 그 방법은 먼저 최댓값의 최솟값을 결정한 후, 해당 값을 이용하여 배열을 돌며 구간의 합이 해당 값보다 작게 그룹을 만들어서 그 그룹의 수와 주어진 m을 비교하는 방법을 이용하였다. 오랜만에 문제를 풀어서 그런지 테스트 케이스 이외의 다른 케이스들을 고려하지 않고 그..
-
BOJ 11439: 이항 계수 5공부(Archive)/BOJ 2019. 7. 10. 18:54
올해들어 알고리즘 공부를 뜸하게 하다가 최근 일주일에 몇 문제씩은 풀게되었다. 이항 계수 4 문제까지는 구글링을 통해 다양한 공식과 정리들을 알게되어 쉽게 해결하였지만 최근 도전했던 이항 계수 5는 도저히 어떠한 공식도 정리도 찾을수가 없었다. 내가 이 문제를 풀기 위해 어떤 방식으로 접근했는지와 결국 풀이를 떠올리고 풀어낸 방법을 소개하고자 한다. 1. 먼저 N제한이 400만이기 때문에 DP를 사용하기에는 너무나도 큰 메모리 공간이 필요하기 때문에, 아마 메모리 공간이 부족하지 않더라도 너무나도 긴 시간이 걸릴 것이기 때문에 불가능하다고 생각했다. 2. 이항 계수 4를 풀기 위해 사용했던 Lucas Theorem을 사용해보고자 했지만 나누는 수가 소수인 경우에만 사용할 수 있으므로 포기했다. 3. 그렇..
-
Pycharm&Anaconda 설치 후 TensorFlow 설치하기(GPU) Windows 10공부(Archive)/ML DL 2019. 7. 10. 18:27
이전 포스팅에서는 Pycharm과 Anaconda를 설치해봤다. 2019/07/10 - [공부/ML DL] - Pycharm 설치하기(Feat. Anaconda) 및 환경설정 Pycharm 설치하기(Feat. Anaconda) 및 환경설정 오늘은 데스크탑에 DL 환경을 구축해보려고 한다. DL 환경을 구축하기에 앞서 2가지 프로그램을 설치해야한다. 1. Pycharm Pycharm은 JetBrains에서 제작한 Python용 IDE로 많이 쓰이는 개발툴중 하나이다. 위키에.. hhahn.tistory.com 이렇게 설치해놓은 Pycharm에 Tensorflow를 설치해보려고 한다. 이전에 노트북에 Python 3.7버전을 설치하고 TensorFlow gpu 버전을 설치하기 위해 며칠동안이나 삽질을 했었다..
-
Pycharm 설치하기(Feat. Anaconda) 및 환경설정공부(Archive)/ML DL 2019. 7. 10. 00:03
오늘은 데스크탑에 DL 환경을 구축해보려고 한다. DL 환경을 구축하기에 앞서 2가지 프로그램을 설치해야한다. 1. Pycharm Pycharm은 JetBrains에서 제작한 Python용 IDE로 많이 쓰이는 개발툴중 하나이다. 위키에 따르면 현용 파이썬 개발툴중에서는 가장 높은 완성도를 지니고 있다고 한다. Community버전은 무료로 제공되고 Professional 버전의 경우 유료(구독형)로 제공된다. 이 글에서는 Community 버전을 이용해서 설치하고자 한다. 2. Anaconda Anaconda는 패키지 관리와 디플로이를 단순케 할 목적으로 과학 계산을 위한 파이썬과 R 프로그래밍 언어의 자유-오픈소스 배포판이라고 한다. (위키피디아) 단순히 말하면 다양한 패키지들을 한번에 쉽게 설치해주..
-
Visual Studio 2019에서 OpenCV 4.1 사용하기공부(Archive)/OpenCV 2019. 7. 8. 19:47
프로젝트를 진행하기 위해 특정 영역을 검출해낼 필요가 생겨 작년 2학기에 배웠던 OpenCV를 떠올렸다. 새로 산 데스크탑에 OepnCV 환경을 새롭게 설치하며 그 과정을 써보고자 한다. 1. OepnCV 설치 (https://opencv.org/) OpenCV 공식 홈페이지의 Releases 메뉴에 들어가보면 OpenCV - 4.1.0을 찾을 수 있다. 환경에 맞는 OS를 선택하고 다운로드를 받는다. 다운로드가 완료된다면 아래의 그림과 같은 아이콘을 가진 프로그램을 볼 수 있다. 해당 프로그램을 실행시켜 관련 파일들의 압축을 풀어준다. 적절한 위치에 압축을 풀어주면 되는데, 이때 opencv라는 이름을 가진 폴더가 안에 있으므로 위치만 설정해주면 된다. 뿐만 아니라 "C:\"와 같은 위치에 압축을 풀어..
-
우선순위 큐(Priority queue)공부(Archive)/Data structure 2019. 6. 12. 12:40
우선순위 큐는 큐와 같이 FIFO와 비슷한 특징을 갖는다. 다른 점이 있다면 큐에 있는 원소를 처리할 때 가장 먼저 들어온 원소를 먼저 처리하는 것이 아닌 우선순위가 가장 높은 원소가 빠져나간다. 따라서 우선순위 큐에 저장되는 원소들은 모두 우선순위를 갖는다. 얼마 전까지 우선순위 큐는 항상 힙으로 구현되는 줄 알았는데 검색을 해보며 찾아보니 아니라는 것을 알게 되었다. "우선순위 큐가 힙이라는 것은 널리 알려진 오류이다. 우선순위 큐는 "리스트"나 "맵"과 같이 추상적인 개념이다; 마치 리스트는 연결 리스트나 배열로 구현될 수 있는 것과 같이, 우선순위 큐는 힙이나 다양한 다른 방법을 이용해 구현될 수 있다." https://ko.wikipedia.org/wiki/%EC%9A%B0%EC%84%A0%EC..
-
캐시(Cache)에 대하여공부(Archive)/OS 2019. 6. 12. 12:03
캐시(cache)는 컴퓨터 과학에서 데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. 캐시는 캐시의 접근 시간에 비해 원래 데이터를 접근하는 시간이 오래 걸리는 경우나값을 다시 계산하는 시간을 절약하고 싶은 경우에 사용한다. 캐시에 데이터를 미리 복사해 놓으면 계산이나 접근 시간 없이 더 빠른 속도로 에디어테 접근할 수 있다. - https://ko.wikipedia.org/wiki/%EC%BA%90%EC%8B%9C 간단히 말하면 데이터를 불러오기 위해 기억 장소에 매번 접근하여 데이터를 불러오는게 아니라 접근 속도가 조금 더 빠른 공간에 미리 불러와놓고 쓰는 방식이다. 특히 이러한 캐시가 효율적으로 동작하게 하기 위해서 즉, 캐시 hit rate를 높이기 위하여 캐시에 저장할 데이터는 지역성(lo..