본문 바로가기

분류 전체보기

(106)
2월 초를 끝내면서.. 2월도 벌써 초반이 후딱 지나가 버렸다. 저번 1주일동안은 코딩공부를 하나도 하지 못했는데, 약간 여러 복합적인 이유가 있다. 1. 개인적으로 안좋은 일이 있었음. 그래서 한 이틀 정도 동안은 그냥 멍때리면서 보냈는데, 이젠 괜찮아졌다. 역시 인생은 계획대로만 되지는 않는다. 2. toeic 시험이 2월 9일에 있었다. 간단하게 일주일 정도동안 컴퓨터 공부랑 병행하면서 해보려고 했는데, 오랜만에 공부하는 토익이라서 가볍게 끝낼 수 없을것 같아서 6일 정도를 공부하는데 썼다. 그래서 컴퓨터 공부를 거의 못한채 토익에만 올인했다. 그래도 나름 잘 본것 같아서 다행. 3. 한달 전에 Asus rog strix 게이밍 노트북을 하나 새로 장만했다. 쓰고있던 msi 노트북은 우분투로 밀어버리고, 한달 가량 잘 쓰..
백준 2251 물통 - 세 쌍 벡터를 이용한 bfs https://www.acmicpc.net/problem/2251 2251번: 물통 각각 부피가 A, B, C(1≤A, B, C≤200) 리터인 세 개의 물통이 있다. 처음에는 앞의 두 물통은 비어 있고, 세 번째 물통은 가득(C 리터) 차 있다. 이제 어떤 물통에 들어있는 물을 다른 물통으로 쏟아 부을 수 있는데, 이때에는 한 물통이 비거나, 다른 한 물통이 가득 찰 때까지 물을 부을 수 있다. 이 과정에서 손실되는 물은 없다고 가정한다. 이와 같은 과정을 거치다보면 세 번째 물통(용량이 C인)에 담겨있는 물의 양이 변할 수도 있다. www.acmicpc.net 이 문제를 풀기 위해서는 물통 a,b,c를 각각 한 쌍으로 만든 다음에, 세쌍 동시에 bfs를 진행해야 한다. a b c 각각 물통에 담긴 물..
백준 10814 나이순 정렬 - c++ 벡터를 가지고 sorting만 할 줄 알면 푸는 문제이다. 필자는 'paired vector'일 경우에는, 어차피 first를 가지고 정렬하기 때문에 다른 것 필요없이 sort함수를 그냥 갖다 쓰면 될줄 알았는데 그렇게 하니까 결과값이 이상하게 나온걸 깨달았음.. 1. sort를 쓰면 안되고 stable sort를 사용해야 한다. std::sort는 두 원소가 같을 때 기존의 순서를 유지해준다는 보장이 없는 unstable sort이다. 이 때문에 "나이가 같으면 가입한 순으로 한 줄에 한 명씩 나이와 이름을 공백으로 구분해 출력한다."가 지켜지지 않는다. 2. cmp 함수를 따로 만들어야 하는 필요성 pair::operator 자체가 first가 같으면 그 다음 second를 비교하기 때문에 {21,j..
[부스트코스] 브라우저의 동작 - 렌더링과 렌더링 엔진 렌더링 엔진이란? 화면에 직접 어떤 위치를 잡고 픽셀단위로 색칠을 해줌. 덕분에 눈으로 다양한 것들이 그려져서 보여지는 것 ex - safari - webkit, chrome - blink 렌더링 엔진의 플로우 html을 파싱한다. 어떤 데이터 객체로 구조화 할 것인지. DOM tree 구조로 데이터를 가지게 된다. 렌더 트리 만들기 렌더 트리를 기준으로 css와 합침. 디스플레이. 마크업(html 코드) 들은 브라우저 상에서 실제로 어떻게 보관이 될까? 다음과 같은 모습들로 구성이 된다. 대조적으로 css 코드는 다음과 같은 구조로 파싱이 된다. 클래스 안의 괄호 안에는 키와 밸류로 값을 저장하게 된다. 위 그림을 예로 들자면 p와 div은 각각 maigin top, 3px 이하가 되는 것이고, 셀렉터..
PS 알고리즘 공부 한달차(1~30일) - 느낀점, 생각 정리 한달차 - 푼 문항 124문항 -solved.ac - 목표했던 골드는 찍었지만, 아직 부족한 점을 너무나도 많이 느낀다. - 현재는 완전 탐색(브루트포스)를 풀고 있는 중이다. plzrun 님의 블로그에 나와있는 코스를 한달째 밟고 있는데, 아직 완탐 부분이 조금 남아 있다. 아마 학교 조교와 오픽 준비를 안했더라면 저 부분들도 다 풀 수 있었을텐데, 4주는 넘기고 약 5주를 바라봐야 할 것 같다. - 개인적으로 제일 어렵다고 느끼는 파트들을 2개 꼽자면 dp 와 완전탐색이다. 일단 완전탐색은, 어떤 문제를 보면 이걸 bfs dfs로 풀어야 되겠다라던지, dp로도 풀 수 있겠다 라던지 등등의 감각은 조금씩 생기는것 같은데, 구현 능력이 조금씩 떨어 지는 것 같다. 오늘 풀다가 벽을 느낀 문제가 하나 있다..
백준 2251 물통 : bfs와 브루트포스 - c++ https://www.acmicpc.net/problem/2251 2251번: 물통 각각 부피가 A, B, C(1≤A, B, C≤200) 리터인 세 개의 물통이 있다. 처음에는 앞의 두 물통은 비어 있고, 세 번째 물통은 가득(C 리터) 차 있다. 이제 어떤 물통에 들어있는 물을 다른 물통으로 쏟아 부을 수 있는데, 이때에는 한 물통이 비거나, 다른 한 물통이 가득 찰 때까지 물을 부을 수 있다. 이 과정에서 손실되는 물은 없다고 가정한다. 이와 같은 과정을 거치다보면 세 번째 물통(용량이 C인)에 담겨있는 물의 양이 변할 수도 있다. www.acmicpc.net 총 6가지 경우의 수에 대해서 전부 bfs. 각각의 물 담긴 상태가 이미 저장되어 있으면 넘기고. 세가지 상태를 전부 저장하는 경우는 처음이었..
1525 퍼즐 - bfs와 브루트포스 - c++ 문제가 처음에 봤을땐 어떻게 풀지 감이 잘 안왔는데(bfs로 풀어야 한다는 사실 빼고) 꾸준함님 해설을 보면서 풀었다. 퍼즐을 아예 하나의 문자열로 받아버린 다음에 y,x 좌표를 3으로 나눈 몫과 나머지로 구한다는 사실이 꽤 신선했다. 특히 잘 익숙치 않은 메소드들을 처음 보고 아직 갈길이 멀었구나를 느꼈던 문제.. 내가 몰랐다고 느낀 메소드들은 다 주석을 달아 놓았다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 ..
백준 9019 DSLR : bfs 활용 브루트포스 탐색 c++ https://www.acmicpc.net/problem/9019 9019번: DSLR 문제 네 개의 명령어 D, S, L, R 을 이용하는 간단한 계산기가 있다. 이 계산기에는 레지스터가 하나 있는데, 이 레지스터에는 0 이상 10,000 미만의 십진수를 저장할 수 있다. 각 명령어는 이 레지스터에 저장된 n을 다음과 같이 변환한다. n의 네 자릿수를 d1, d2, d3, d4라고 하자(즉 n = ((d1 × 10 + d2) × 10 + d3) × 10 + d4라고 하자) D: D 는 n을 두 배로 바꾼다. 결과 값이 9999 보다 큰 경 www.acmicpc.net 이 블로그에서 이전에 몇번 다뤄봤던 bfs 문제이다. (최단경로!) 여기서 중요한건 DSLR을 활용한 문자열을 출력해야 한다는 점이다. ..