전체 글

전체 글

    1841B - Keep It Beautiful

    문제 https://codeforces.com/contest/1841/problem/B Problem - B - Codeforces codeforces.com 풀이 값을 추가했을 때 배열이 beautiful 한 상태를 유지하려면, 아래의 조건이 만족해야 합니다. $a_i > a_{i+1}$ 인 경우가 반드시 $1$ 회 이하여야 합니다. 물론 $a_k > a_1$ 인 경우도 포함해서요. 따라서, 우리는 이 문제를 두 가지로 나눌 수 있습니다. $a_i > a_{i+1}$ 인 경우가 아직 배열에 없는 경우, 그리고 이미 있는 경우로요. 조금 더 풀어서 설명드리자면, 배열에 내림차순인 값인 경우가 있는지의 여부를 의미합니다. 배열이 비어 있는 경우 이 경우 항상 새로운 수를 배열에 추가할 수 있습니다. 문제에..

    우아한테크코스 5기 - Lv. 2 "페이먼츠" 미션

    블랙카드 하나 만드실래요? 이번 미션은 페이먼츠 미션, 카드사, 카드 이름, 번호 등을 입력해 카드를 등록할 수 있는 카드사 등록 화면을 구현해 보는 것이 목표였습니다. 은근 디자인에 시간을 많이 쏟은 미션이에요! 미션 저장소 데모 페이지 Step 1 코드리뷰 Step 2 코드리뷰 Step 3 코드리뷰 이번 미션에서 배워 본 것들 CSS Module 저는 원래부터 꾸미는 것을 좋아했고, 그에 따라 css도 자연스럽게 좋아했지만, 여러 번 사용해 본 만큼 불편한 점도 많이 느꼈습니다. 그 중에는 역시 css 파일을 여러 개 사용할 경우 속성이 겹칠 수 있는 문제와, css 클래스와 아이디 이름 짓는 것이 굉장히 힘들었다는 점이 있었습니다. 이번 미션에서 페어인 고니가 css module을 추천해 주셔서 사..

    【백준】- 24912. 카드 색칠

    문제 https://icpc.me/24912 24912번: 카드 색칠 첫째 줄에 카드의 개수를 나타내는 정수 N이 주어진다. 둘째 줄에 N 개의 정수가 공백으로 구분되어 주어진다. i 번째 정수 ai는 i 번째 카드의 색깔을 나타낸다. 1, 2, 3은 각각 빨간색, 초록색, 파 www.acmicpc.net 아이디어가 간결하면서도, 떠올리기 쉽지 않았던 것 같습니다. 복잡하게 생각할 수록 더 안 풀리는 문제였다고 생각해요... 풀이 문제에 조건에 의하면 처음부터 색칠되어 있는 카드가 있을 수 있습니다. 처음에 색칠되어 있는 카드 중 서로 같은 색으로 칠해진 인접한 카드가 있는 경우, 그리고 없는 경우로 나누어서 생각해 봅시다. 처음부터 같은 색으로 칠해진 인접한 카드가 있는 경우 이 경우는 항상 불가능합니..

    【백준】- 13141. Ignition

    문제 https://www.acmicpc.net/problem/13141 13141번: Ignition 첫 번째 줄에는 그래프의 정점의 수 N과 간선의 수 M이 주어진다. (2 ≤ N ≤ 200, N-1 ≤ M ≤ 20,000) 두 번째 줄부터 M개의 줄에는 각 간선의 시작점 S, 끝점 E, 길이 L이 주어진다. (1 ≤ L ≤ 100) 시작점 www.acmicpc.net 발상이 신기해서 재밌게 풀었습니다. CLASS 6을 찍기 위한 마지막 문제이기도 했고요! 그래서 그런지 이 문제만은 꼭 풀이로 남겨보고 싶었습니다. 풀이 최단 거리를 이용하여 푸는 문제라는 것을 떠올릴 수는 있겠지만, 정점이 아닌 간선에 대한 정보를 물어보고 있는 데다가, 그것도 가장 빨리 불타는 간선도 아닌 가장 마지막에 타는 간선에..

    우아한테크코스 5기 - Lv. 2 "다시, 점심 뭐먹지" 미션

    Hello, React! 드디어 레벨 2, React와 만나게 되었습니다! React와 처음 만나니 설레기도, 한편으로는 두렵기도 합니다. 슬슬 어려워지기 시작하는 개발과 유지보수 자바스크립트를 입문한 이후로, 학습할 때나, 프로젝트를 만들어 볼 때나 항상 바닐라 자바스크립트만을 사용했습니다. 라이브러리를 사용하지 않고도 충분히 구현할 수 있었던 것도 있었고, npm으로 정체불명의 무언가를 깔아보는 것은 사실 공포 그 자체였거든요. 뭘 하는지는 모르겠는데 엄청나게 파일이 생긴다라...음, 썩 유쾌한 상황은 아닌 것 같네요. 그런데 백준 확장 프로그램 토탐정을 개발하면서, 슬슬 불편한 상황이 다가오기 시작했습니다. 이거 일단 구현해놓긴 했는데, 나중에 다른 걸 수정해야 할 때면 어떻게 해야 하지? 특히나 ..

    【백준】- 16341. Horsemeet

    문제 https://www.acmicpc.net/problem/16341 16341번: Horsemeet Traditional games such as chess or checkers, with slight modifications are also played in Binary Casino. However, not many people play them, as these games are often referred as boring. The visitors are more attracted to more dynamic games which cause adre www.acmicpc.net 문제를 간단히 요약하면... 두 나이트가 $8 \times 8$ 내의 체스판에서 정해진 위치에 놓여 있고, 백부터 시작..

    【백준】- 14263. 카드 놓기

    문제 https://www.acmicpc.net/problem/14263 14263번: 카드 놓기 영선이는 카드와 그리드를 가지고 놀고 있다. 각각의 카드는 직사각형 모양이며, 색칠되어져 있다. 두 카드가 같은 색을 가지는 경우는 없으며, 크기도 카드마다 다를 수 있다. 영선이는 한 번에 www.acmicpc.net 풀이 카드가 쌓여 있는 관계를 잘 나타낸다면 방향성을 가지고 있는 그래프로 나타낼 수 있고, 위상 정렬로 풀 수 있게 됩니다. 아래와 같이 카드가 놓여 있다고 해 볼게요. 카드 $A$ 와 $D$ 는 처음부터 놓을 수 있습니다. 카드 $B$ 는 카드 $A$ 와 $D$ 가 놓여야 놓을 수 있습니다. 카드 $C$ 는 카드 $A$ 가 놓여야 놓을 수 있습니다. 카드 $E$ 는 카드 $B$ 가 놓여야..

    우아한테크코스 5기 - Lv. 1 자동차 경주 미션

    미션 페이지 & 코드 리뷰 페이지 미션 페이지 - 본과정의 미션은 별도로 공개되어 있지 않기에, 허락 하에 미션을 제가 직접 적었습니다. 1단계 코드 리뷰 2단계 코드 리뷰의 경우, 제가 제출기한을 어겨서 리뷰가 없었습니다. 지금 생각해도 너무 아쉽습니다. 시간을 지키는 거 정말로, 중요하군요... 이번 미션에서 배운 점 우테코의 첫 번째 미션인만큼, 새로운 것을 배우는 것보다는 프리코스에서 학습했던 내용들을 돌아보는 미션이었습니다. 프리코스에서 배운 내용들은 이미 적어두었으므로, 링크를 첨부하는 것으로 대신하겠습니다. 우아한테크코스 5기 - 프리코스 그 대신 다른 이야기를 해 볼까요? for문 배틀 (vs. 리뷰어 파노) Q. for문을 쓰는 게 대체 뭐가 문제라는 거죠? 자동차 미션을 진행하면서 가장..