전체 글 4

백준 6549번: 히스토그램에서 가장 큰 직사각형 (플래티넘 V)

https://www.acmicpc.net/problem/6549 6549번: 히스토그램에서 가장 큰 직사각형 입력은 테스트 케이스 여러 개로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, 직사각형의 수 n이 가장 처음으로 주어진다. (1 ≤ n ≤ 100,000) 그 다음 n개의 정수 h1, ..., hn (0 ≤ hi ≤ www.acmicpc.net 이런 식으로 히스토그램이 주어졌을 때, 만들 수 있는 가장 큰 직사각형의 넓이를 구하면 된다고 한다. 사실 이 문제는 동치인 문제가 굉장히 많아서, 하나만 풀면 플래티넘 V 문제를 무려 6개 가량 해결해버릴 수 있는 솔브닥 점수 버핑 문제이다. 이 문제를 풀고 같은 유형의 문제로 복습해보기 좋다. 요즘 내 세그먼트 트리 폼이 올랐으므로, 한..

생산적인/PS 2022.10.22

TypeScript 초초초초요약본 서론

/* 본 글은 필자가 TypeScript를 수박겉핥기식으로 익히면서 작성한 글임을 밝힙니다. 이렇게 관망만 하다가는 실제로 적용하기도 전에 모든 것을 까먹겠다는 위기의식에, 개인적으로 느낀 TS의 중요 포인트를 함축한 컨닝 페이퍼를 남깁니다. */ TypeScript가 뭔데? 웹서핑을 하다보면 삐까뻔쩍한 사이트들이 많이 보인다. Apple의 공홈이나 Toss의 웹 페이지들을 보면 나도 저런거 만들어보고 싶다는 생각이 들곤한다. 생각해보니 내가 못 만들 이유가 뭐가 있는가, 만들어보자! ...고 결심하면 먼저 HTML을 배워야 한다. 우리가 보는 웹페이지들은 사실 모두 HTML을 보기 좋게 만들어 놓은 것이라고 할 수 있다. 난해해 보이는 비주얼때문에 진입장벽이 조금 있지만, 사실 크롬 같은 브라우저에 "..

생산적인/WEB 2022.10.06

백준 3006번: 터보소트 (플래티넘 IV)

https://www.acmicpc.net/problem/3006 3006번: 터보소트 첫째 줄에 N이 주어진다. N은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수이며, 배열의 크기이다. 둘째 줄부터 N개의 줄에는 1보다 크거나 같고, N보다 작거나 같은 수가 중복 없이 주어진다 www.acmicpc.net 터보소트라는 한번도 들어본 적 없는 정렬 알고리즘이 등장한다. 정렬하는 방식을 읽어보면 가장 원시적인 방식의 버블소트와 크게 다를 것이 없어보인다. 버블소트가 그냥 계속 앞으로 땡겨오는 것이라면 터보소트는 앞-뒤로 번갈아가며 보내주는 정도의 차이이다. 나무위키 피셜로는 실제로 "칵테일 소트"라는 버블소트의 하위 정렬 알고리즘이 있다고 하는데, 방식이 터보소트랑 완전 똑같다. 칵테일 섞는..

생산적인/PS 2022.09.18