이 글에서는 프로그래머스 -멀쩡한 사각형 문제에 대해 다뤄보겠습니다. 문제 풀이는 C++로 이루어져 있고 함께 들어가 있는 개념들도 간단히 정리 해보는 형식으로 작성되었으므로 오타등의 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 저는 문제를 풀고나서 꼭 구글에 해당 문제를 한 번 검색을 해 봅니다. 다른 사람들의 풀이가 도움이 된다고 해서 검색은 해보지만 다수와 다르게 풀었다면 골치가 조금 아픕니다. 대중적인 풀이(?)가 더 효율성이 좋은건가... 하고 효율성도 따져야 하고... 아직 이 문제에 대해서 효율성 검사를 해보지는 않았지만 이 글 쓰고 해보겠습니다. 이 문제를 풀 때 많이 쓰시는 방법이 gcd (최대공약수)를 사용하시던데 아직 찬찬히 살펴보지 않아 어떤 맥락에..
이 글은 순환 큐(Circular Queue)에 대해 다루겠습니다. 전체적인 내용은 Programiz를 정리했습니다. 공부한 것을 정리하는 형식으로 작성되었으므로 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? '순환 큐'하면 제일 먼저 떠오르는 중요한 개념은 일반 큐 또는 배열보다 공간을 효율적으로 사용한다는 점입니다. 아래 [그림1]에 총 11번의 enqueue와 7번의 dequeue가 일어난 큐를 표현 해 놓았습니다. 앞으로 새로운 값을 이 큐에 넣을 때는 뒤로 넣게 되기 때문에 앞에 dequeue된 공간은 사용하지 못합니다.(물론 큐를 empty시켜서 처음부터 넣게다고 한다면 모를까..) 이렇게 메모리에는 공간의 낭비가 발생하게 됩니다. 순환 큐의 작동 방식 순환 큐..
이 글에서는 프로그래머스 - 124 나라의 숫자 문제에 대해 다뤄보겠습니다. 문제 풀이는 C++로 이루어져 있고 함께 들어가 있는 개념들도 간단히 정리 해보는 형식으로 작성되었으므로 오타등의 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 재귀법 좋아하시는 분 계세요? 재귀법하면 제일 먼저 떠오르는게 피보나치 수열인데 드디어 그 틀을 좀 벗어날 수 있을 것 같습니다. 문제를 풀고 다른 분들 풀이 보니까 진법의 원리를 이용해서 푸신 분들이 많던데 저도 처음 풀었을 때 나온 풀이가 3진법이니 가장 직관적인 것이 아닐까 싶습니다. 그러나 3진법 풀이는 이미 다른 블로그에도 많으니 재귀법으로 설명드리겠습니다. 풀이 1 : 재귀법 제가 이 포스트를 위해 공을 좀 들였습니다. 예시를 ..
이 글에서는 프로그래머스의 Level 1 문제 중 꼭 한 번은 다루고 넘어갔으면 좋겠는 문제들에 대해 살펴보도록 하겠습니다. 문제 풀이는 C++로 이루어져 있고 함께 들어가 있는 개념들도 간단히 정리 해보는 형식으로 작성되었으므로 오타등의 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 일단 시작하기 전, 프로그래머스 Level 1 문제에는 [2019 카카오 개발자 겨울 인턴십 : 크레인 인형뽑기 게임] [2018 카카오 블라인드 채용 1차 : 비밀지도, 다트게임] [2019 카카오 블라인드 채용 1차 : 실패율] [2018 summer/winter coding : 예산]이 포함되어 있습니다. 이 문제들은 선택적으로 풀어보는 것이 아닌 반드시 풀어보아야 할 문제일테니 따로 ..
이 글에서는 프로그래머스 - 탑 문제에 대해 다뤄보겠습니다. 문제 풀이는 C++로 이루어져 있고 함께 들어가 있는 개념들도 간단히 정리 해보는 형식으로 작성되었으므로 오타등의 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 하 진쟈 한 번만에 성공한거 너무 오랜만이라서 지금 흥분을 주체할 수 없어요. 아니 뭐 꼭 어려운 문제를 풀고 나서 성취를 느껴야 하는 건 아니잖아요? 안그래도 지금 백준에 뭐 안풀리는 문제 있어가지고(풀릴 듯 안풀리는... 분명 내일 풀면 풀릴 거야 망할 토마토...) 자존감 떨어지고 있는데 프로그래머스 와서 힐링 했네요ㅋㅋ 문제는 아래 [그림 1] 으로 깔끔하게 요약이 될 것 같습니다. 각 송신탑은 왼쪽으로 시그널을 보내고 자신 보다 높은 송신탑의 수..
이 글은 BOJ 2606-바이러스 문제에 대해 다루겠습니다. BFS, DFS관련 게시글은 요이따 여기에 있습니다. 공부한 것을 정리하는 형식으로 작성되었으므로 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 결론부터 말하자면 문제를 풀 때 DFS를 쓰는 것이 더 적합합니다. 왜냐하면 바이러스에 걸린 1번 컴퓨터와 연결된 모든 컴퓨터를 찾아야 하기 때문입니다. DFS는 모든 노드를 traverse할 때, BFS는 path finding을 할 때 잘 쓰이기 때문입니다. 그런데 저는 BFS로 풀었냐구요? 음... 약간 제가 재귀문 트라우마가 있어서 BFS로 먼저 짰다가 시간 초과나면 DFS로 갈아탈 생각이었습니다. 뭐... 코테 볼 때나 면접 볼 때 그럴 여유는 없겠지만 우리는 ..
이 글은 BFS와 DFS에 대해 다루겠습니다. 익숙한 개념일텐데요, BFS는 넓이 우선 탐색으로 breadth first search이고, DFS는 깊이 우선 탐색으로 depth first search 입니다. 전체적인 내용은 Cracking the Coding Interview 서적 기반, Geeks for geeks 홈페이지를 정리했습니다. 공부한 것을 정리하는 형식으로 작성되었으므로 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 그래프를 알고리즘 PS를 하기 위해 이 글을 보고 계시다면 그래프에서 가장 중요한 것은 일반 문제를 그래프를 모델링해서 풀어낼 수 있는 능력이라고 할 수 있지 않을까요? 그 전에 개념부터 잡고 갑시다! 그래프와 그래프 표현 그래프도 자료구조 ..
이 글에서는 프로그래머스 - 카펫 문제에 대해 다뤄보겠습니다. 문제 풀이는 C++로 이루어져 있고 함께 들어가 있는 개념들도 간단히 정리 해보는 형식으로 작성되었으므로 오타등의 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 간만에 종이에 큼지막하게 무엇인가를 끄적여 본 것 같습니다. 이렇게 끄적이는 문제가 저는 좋은데 말이죠. (근데 뭐가 참 어지럽네요 책상이... 과자 껍질도 있고 건강증명서에 스패츌라까지...ㅎ) 뭐 딱 보고 머릿속에 챡챡 떠오르셨다면 부럽습니다~ 전 숫자를 직접 써보고 직접 결과가 나오는 것을 봐야 속이 편한 사람이라 떠오르더라도 간이 코딱지 만해서 바로 코드 짜러 못가죠. 끄적인건 아래와 같이 끄적였지만 깔끔히 정리해보면 [그림 1] 처럼 되겠네요...
이 글에서는 프로그래머스 - 소수 찾기 문제에 대해 다뤄보겠습니다. 문제 풀이는 C++로 이루어져 있고 함께 들어가 있는 개념들도 간단히 정리 해보는 형식으로 작성되었으므로 오타등의 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 문제의 핵심이 무엇인가.... 라고 물어 본다면 '소수 찾기'는 아닌 것 같습니다. 소수 찾기라면 프로그래밍을 배우고 얼마 지나지 않아 바로 과제로 나오는 함수(예를 들면 isPrime을 짠다던지 그렇다던지 그렇쟌습네까?) 중 하나지 않습니까? 소수를 찾지 못해서 문제를 못 푸는 것은 아닌 것 같습니다. 문제의 분류가 greedy algorithm에 있다는 것에 의심을 가득 품고 문제를 열어보면 핵심은 종이 쪼가리의 combination & per..
이 글에서는 프로그래머스 - 모의고사 문제에 대해 다뤄보겠습니다. 문제 풀이는 C++로 이루어져 있고 함께 들어가 있는 개념들도 간단히 정리 해보는 형식으로 작성되었으므로 오타등의 오류가 있을 수 있습니다. 오류 발견시 댓글로 꼭 말씀해주세요! 시작해볼까요? 중학교 때 부터 제 고질병은 문제 똑바로 안 읽기 였습니다. 'Level 1 문제를 이렇게 어렵게 풀 일이야?' 라고 생각할 만큼 계속 답이 나오지 않더라구요. 근데 왜 그랬는지 아십니까....? 문제로 주어지는 파라미터 vector의 이름은 answers 그리고 답으로 return 해야 할 vector의 이름은 answer 이기 때문에 풀다가 변수 잘못 써버리면 그냥 틀리는거죠. 혹시 '이상하다... 왜 안풀리는거야... 맞게 했는데...' 라고 ..
- Total
- Today
- Yesterday
- 코테
- 커넥트재단
- 컴퓨터공학
- firebase
- swacademy
- RxSwift
- 알고리즘
- 코딩테스트
- 데이터분석
- C++
- 부스트캠프
- OS
- 컴공졸작
- 개발자인턴
- 부스트캠프2020
- 삼성소프트웨어아카데미
- 졸업작품
- TableView
- 운영체제
- nosql
- 부캠
- 컴과졸작
- ios
- 보안
- 인턴
- SWIFT
- 소프트웨어아카데미
- 프로그래머스
- 삼성
- 소프트웨어역량시험
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |