본문 바로가기

전체 글

(159)
Atcoder Regular Contest 122 후기 블루를 갔다. 많이 기쁘다. A는 무지성 DP를 했다가 1틀당했고 B는 무지성 삼분탐색을 했다가 다시 또 당했다. C는 솔직히 전혀 모르겠었고 D는 트라이 박는 문제겠거니 하고 넘기고 E에 집중했더니 됐다. 블루 간게 제일 중요하니까 오늘은 여기서 끝이다.
cyberduck cli로 리눅스에서 FTP로 구글 드라이브에 파일 업로드하기 제일 중요한 터미널에서 칠 커맨드 duck --username [자신의 gmail] --parallel [커넥션 갯수] --upload "googledrive:/[드라이브 상의 경로]" [로컬 파일 경로] Colab에서 사용하려고 구글 드라이브에 파일을 올리려고 했는데 파일 갯수가 많다보니 처음 올리니까 100시간 걸린다고 나오더라. 이건 도저히 못쓰겠다 싶어서 FTP로 커넥션 여러개 꼽아서 동시에 전송 가능한 방법을 알아봤다. 유료 프로그램인 파일질라 프로나 smartFTP 같은 걸 써도 되고 cyberduck이라는 무료 프로그램도 가능했다. 그런데 cyberduck이란 놈이 리눅스에선 GUI 앱이 없고 cli로만 사용 가능하다. 여기까진 괜찮은데 document가 좀 구려서 시행착오를 조금 했다. C..
맥북에어 M1 코딩용 사용기 지난 5월 24일에 애플 매장에 가서 맥북 에어 M1을 제일 낮은 사양으로 구매했다. (7코어, 256기가 ssd, 램 8기가) 사용기를 쓰고 싶었는데 그래도 환불기간은 지날 때까지 써보고 써야되지 않을까 싶어서 지금 쓴다. [목차] 1. 어떤 목적으로 구매했는가? 왜 기본 사양으로 샀는가? 2. 좋았던 점 3. 아쉬웠던 점 4. 결론 1-1. 어떤 목적으로 구매했는가? 코딩용이다. 내가 주로 하는 코딩은 C++로 백준 문제를 풀거나 jupyter notebook으로 가끔 파이썬 코딩하거나 하는 정도이다. 리모트 머신에 접속해서 대부분의 것을 진행한다. 내가 코딩할 때 사용하는 환경을 좀 더 자세히 설명해보자. 우분투가 깔려있는 메인 노트북을 충전기 꼽아두고 집을 나온다. 그리고 삼성 노트북(window..
DBMS는 저장소를 어떻게 관리하는가? - 2 Data Representation 데이터베이스 파일은 페이지들로 구성되고 그 페이지가 어떻게 저장되는지 또 어떻게 찾아가는지를 알았습니다. 이제 튜플의 데이터들이 어떻게 표현되는지 볼 차례입니다. 디스크에 저장되어 있는 것은 크게 봤을 때 그저 바이너리일 뿐입니다. 이를 해석하는 것은 DBMS의 일입니다. DBMS는 튜플 내부에 대한 정보를 어떻게 해석할지를 알아야 하는데 이 정보는 우리가 스키마라고 얘기하는 것과 상통하는 부분입니다. 그리고 이런 정보를 catalog에 저장해둡니다. 튜플 내부에 저장되는 값들의 종류를 몇가지 살펴봅시다. Integer는 우리가 흔히 다루는 자료형 중 하나로 INTEGER, BIGINT, SMALLINT, TINYINT 같은 자료형이 있으며 C/C++의 native t..
백준 21916번 Neo-Robin Hood 문제 요약 돈을 $m_i$달러만큼 들고 있는 정치가 $N$명이 주어진다. 각 정치가는 $p_i$만큼 돈을 원하고 있다. 이 때, 정치가들한테서 돈을 훔치려고 하는데 그냥 쌩으로 훔치면 위험하기 때문에 훔친사람의 수와 같은 수의 정치가들한테 그들이 원하는 만큼의 돈을 줘야 한다. 이 때, 돈을 훔칠 수 있는 정치가의 수의 최댓값을 구하시오. $ N \le 100,000$ $1 \le m_i, p_i \le 10^9$ 풀이 관찰 1 : 일단 돈을 줄 사람 $k$ 명을 정했다고 하자. 그렇게 되면 돈을 훔쳐야 될 사람 $k$ 명은 남은 사람 중에서 돈이 제일 많은 $k$ 명이 되는 것은 자명하다. 관찰 2. $k$ 명에게서 훔치는 것이 가능하다면 당연히 $k$ 명보다 적은 수의 정치가에게서 훔치는 것도 가능하..
Atcoder Beginner Contest 204 후기 망했다. 후기에 맨날 망했다고만 쓰는거 같다. 저 D를 보자마자 냅색인거 눈치까고 12분엔 풀었어야 되는 거 같다. 일단 라운드 시작되자마자 문제 페이지 로딩이 꽤 오래 걸렸다. 느낌이 쎄했다. A를 읽었다. 문제를 이해못하겠어서 세번은 다시 읽었다. 역시 A라 쉽긴 했다. B, C는 보자마자 풀었다. D는 보자마자 DP겠거니 했는데 생각했던 과정이 이렇다. 요리들을 오븐 두개로 쪼개는구나 -> 정렬하고 i번째를 첫번째 혹은 두번째로 보낼 때의 최소 시간으로 해보자. -> 점화식이 안나오네.... 좀 오래 걸릴거 같으니 넘어가자. 그러고 E로 가서 문제를 읽고 심란해졌다. floor(x/t)가 t가 변함에 따라 가질 수 있는 값들은 대략 sqrt(x)개임을 이용하는건가? 고민하다가 일단 무지성 다익스트라..
DBMS는 저장소를 어떻게 관리하는가? 개인적으로 아래과 같은 강의를 들으면서 DBMS에 관련해서 공부 중인 내용을 정리하려고 쓰는 포스팅입니다. 강의도 듣고 책도 읽고 정리하고는 있어도 제가 모자라서 틀린 부분이 있을 수도 있습니다. 혹시라도 발견하시면 댓글로 알려주시면 감사하겠습니다. https://15445.courses.cs.cmu.edu/fall2019/ Which Storage Type? 저장소를 분류하는 방법에는 다양한 기준이 있겠지만 휘발성을 기준으로 나눠보자. 여기서 휘발성이란 전원을 껐을 때 담겨있던 정보가 사라지는 것을 의미한다. 휘발성이 있는 저장소의 대표격은 역시 RAM이다. 보통 메모리라고 퉁쳐서 부르기도 합니다. 그리고 비휘발성의 저장소 중 제일 대표적인 것은 HDD일 것입니다. 일반적으로 데이터베이스를 사용하는 상..
Atcoder Regular Contest 121 후기 퍼포 1100대를 내고 레이팅은 수직하락했다. ㅜ 변명을 하자면 B에서 예상못한 런타임에러를 맞고 정신못차리면서 끝까지 못고쳤다. 최솟값 갱신할 때 변수 하나 if문 하나 더 쓰기 싫다고 이상한 조건으로 갱신 조건을 걸었더라. 꼭 끝나기 40초전쯤에 이런거 보이더라 기록이라고 적는 거도 거창한거 같아서 후기로 제목을 바꾼다. A번은 문제를 보자마자 풀이가 생각났는데 x기준 max와 second max, y기준 max와 second max의 거리를 비교해야 되는데 x의 max와 y의 max가 서로 같은 점을 사용할 때의 반례를 생각 안하고 냈다가 틀렸다. B번은 전체 갯수가 2N이라서 세 집합의 크기는 셋다 짝수거나 두개만 홀수인 경우로 나뉜다는걸 꽤 빠르게 깨달았다. 그리고 홀수-홀수를 매칭시키는 경우밖..