Processing math: 0%

전체 글

프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 대략 이런 모양의 블럭들이 있는 상태에서, 맨 위에 블럭 하나를 추가하는데 P원, 맨 위 블럭 하나를 제거하는데 Q원이 든다.모든 블럭의 높이를 같게 만드는데 필요한 최소 금액 구하자. N x N 모양의 블럭 바닥0 이상 10억 이하의 블럭 높이 1 1   1. 삼분 탐색맨 처음 떠오른 풀이는 이분 탐색이었는데, 조금 더 생각해보니 이분 탐색으로는 풀 수 없을 것 같았다.왜냐하면 해의 그래프가 아래로 볼록한 2차원 그래프이기 때문이다.  P, Q, 블럭의 모양에 따라 다르겟지만 대략 이런 모양이 나온다. 주어진 모양에서 가장 높은곳과 가장 낮은 곳 이..
·JS
Unbundling the JavaScript module bundler - DublinJS July 2018Today we all use Webpack (right?), but I remember a time when you had to manually copy-paste JavaScript files to create a package of libraries you could use in your frontend application. Many years have passed since then and the landscape of module bundlerslides.com 아무것도 없는 상태에서 시작해서 단계적으로 모듈, 번들러를 설명해주셔서 이해하기 쉬웠다. 모듈-> 여러개로 분리된 코드 조각 ..
프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  트라이주어진 words로 트라이를 만들어준다.struct Node { unordered_map count; Node* next[26] = {};};  count 는 해당 노드를 지나가는 word 들의 최대 사이즈의  (사이즈: 개수) 값을 가진다. 예를 들어, 트라이에 front를 추가한다면f 노드의 count[5] += 1;f -> r 노드의 count[5] += 1;f -> r -> o 노드의 count[5] += 1; 이런 식이다.  next 는 다음 노드 정보이다.  frodo와 front가 있다면 다음과 같은 trie를 얻을 수 있다...
·etc
문제 여러가지 시도를 해 보았는데, 디바이스에 메모리를 적게 할당해서 뜨는 문제 같습니다  해결Android Studio -> Virtual Device Manager  왼쪽 위에 + 버튼 누르고 New hardware profile  (기존 있는 디바이스들은 메모리 설정이 따로 안 되는 것 같아요)  Device Name, Device Type, Screen 은 직접 설정하시고Memory 크게 하기  Finish 하고 방금전에 만든 디바이스 선택, Next  Additional settings에서 Graphics acceleration -> HardwareCPU cores 크게, RAM 크게, VM heap size 크게  만들어진거 실행하기 끝 !       16기가로 해놨는데도 최대 6기가 정도밖에..
·
코딩하기 좋은 폰트를 한참 찾아다녔었다. naver d2, nerd fonts, jetbrains mono, comic sans 이것저것 써봤지만 결국 Iosevka로 정착했다  IosevkaThe two quasi-proportional families: Iosevka Aile, and Iosevka Etoile, are made for documents and writing. They provide more variety on character widths, including a slightly wider letter w and m, and narrower i and l.typeof.net 코드의 너비가 좁은데 가독성은 좋아서, 한 화면에 많은 글자를 볼 수 있다 책 금속 활자 이야기가 계속 나와서 ..
·etc
프로젝트 루트 디렉토리에 Out 만들고 실행단축키는 ctrl + shift + r tasks.json{ "version": "2.0.0", "tasks": [ { "label": "Build Out", "type": "shell", "command": "g++", "args": ["-g", "{file}", "-o", "{workspaceFolder}/Out"] }, { "label": "Run Out", "type": "shell", "command": "${workspaceFolder}/Out" }, { "label": "Build and Run", "dependsOn": ["Build ..
·JS
문제 위와 같은 디자인을 구현하던 중 문제가 발생했습니다. 일단 검색창에 focus 이벤트가 발생하면 옵션창이 뜨고, blur 이벤트가 발생하면 다시 사라지도록 하였습니다.또한 옵션에 click 이벤트가 발생하면 선택된 옵션을 데이터 리스트에 추가하도록 하였습니다. 하지만 생각과는 달리 옵션의 onClick 에 등록한 이벤트 핸들러가 아예 실행되지 않는 걸 알 수 있었습니다. 해결 방법 onClick 대신 onMouseDown 에 이벤트 핸들러를 등록한다. onMouseDown={(e) => { e.preventDefault() }} 를 추가하고, onClick은 그대로 둔다. 여러 블로그를 통해 해결 방법을 찾을 수 있었지만, 명확한 설명은 찾을 수 없었습니다. 왜 mousedown 이벤트를..
·리눅스
파일 디스크립터파일 디스크립터(file descriptor)는 운영체제가 프로세스가 열어 둔 파일, 네트워크 소켓, 파이프, 표준 입출력(예: STDIN, STDOUT, STDERR) 등의 자원을 식별하기 위해 부여하는 정수 값이다.존재하는 파일을 열거나 생성하면 커널은 파일 디스크립터를 프로세스에게 리턴한다. 파일 관련 작업(read, write,,,)을 할 때, 리턴받은 파일 디스크립터를 인자로 주어 사용할 수 있다.관례적으로 유닉스 시스템에서파일 디스크립터 0번을 standard input, 1번을 standard output, 2번을 standard error로 연결한다.코드 예시stdout에 출력하기, 파일에서 텍스트 읽어오기hello.txtHello! in hello.txt. main.c#in..